ФЕДЕРАЛЬНОЕ ГОСУДАРСТВЕННОЕ АВТОНОМНОЕ ОБРАЗОВАТЕЛЬНОЕ УЧРЕЖДЕНИЕ ВЫСШЕГО ОБРАЗОВАНИЯ
«БЕЛГОРОДСКИЙ ГОСУДАРСТВЕННЫЙ НАЦИОНАЛЬНЫЙ
ИССЛЕДОВАТЕЛЬСКИЙ УНИВЕРСИТЕТ»
( Н И У
« Б е л Г У » )
ИНСТИТУТ ИНЖЕНЕРНЫХ ТЕХНОЛОГИЙ И ЕСТЕСТВЕНННЫХ НАУК
КАФЕДРА ОБЩЕЙ МАТЕМАТИКИ
ЧИСЛЕННЫЕ РЕШЕНИЯ ЗАДАЧ БЫСТРОДЕЙСТВИЯ БЛИЗКИХ К
КАНОНИЧЕСКИМ
Выпускная квалификационная работа
обучающегося по направлению подготовки 01.04.01 Математика
очной формы обучения, группы 07001632
Вовнянко Анастасии Алексеевны
Научный руководитель
к.ф.-м.н., доцент
Флоринский В.В.
Рецензент
к.т.н., доцент
Маматов Е.М.
БЕЛГОРОД 2018
СОДЕРЖАНИЕ
ВВЕДЕНИЕ .................................................................................................................. 3
1. ПОСТАНОВКА ЗАДАЧИ БЫСТРОДЕЙСТВИЯ ............................................... 4
1.1. Общая постановка задачи оптимального управления. Динамика объекта. ... 4
1.2 Основные вопросы математической теории оптимального управления. ....... 7
2. РЕШЕНИЕ ЗАДАЧИ БЫСТРОДЕЙСТВИЯ НА ОСНОВЕ
MIN-
ПРОБЛЕМЫ МОМЕНТОВ МАРКОВА ................................................................. 10
2.1 Min-проблема моментов Маркова ..................................................................... 10
2.2 Решение канонической задачи ........................................................................... 12
2.3 Уравнения для нахождения всех моментов переключения ............................ 17
3. АНАЛИТИЧЕСКОЕ РЕШЕНИЕ ЗАДАЧИ БЫСТРОДЕЙСТВИЯ, БЛИЗКОЙ
К КАНОНИЧЕСКОЙ. ............................................................................................... 23
3.1 Непрерывная зависимость моментов переключения от спектра матрицы в
линейной задаче быстродействия. ........................................................................... 23
3.2 Непрерывная зависимость решения задачи управления от параметра и
начальных данных. .................................................................................................... 27
3.3 Численный метод решения задачи оптимального быстродействия,
основанный на точном решении. ............................................................................. 33
4. ПОСТРОЕНИЕ ЧИСЛЕННОГО РЕШЕНИЯ ..................................................... 44
СПИСОК ИСПОЛЬЗОВАННЫХ ИСТОЧНИКОВ ............................................... 46
ПРИЛОЖЕНИЯ ......................................................................................................... 48
2
ВВЕДЕНИЕ
Центральное место в теории оптимального управления, занимает
проблема быстродействия, особенно линейная задача быстродействия. Время
быстродействия есть наиболее естественный критерий оптимальности, поэтому
задача быстродействия является одним из наиболее распространенных
объектов применения различных методов оптимального управления. Решение
линейных, в частности, канонических задач важно тем, что к ним можно свести
решения некоторых нелинейных задач [8, 10].
Компьютерное
применение
помогает
связывать
теоретические
исследования с практикой, что является важным элементом в разработке для
решения задач быстродействия численных методов. Чем больше размерность
задач быстродействия, тем больший интерес она представляет. Сложность
решения подобных задач заключается в том, что в ходе выполнения приходится
работать с плохо обусловленными матрицами. В наше время для решения задач
быстродействия, разработка численных методов и компьютерных программ
является актуальной.
Цель работы
изучить методы задач быстродействия используя
аналитическое решение канонической задачи быстродействия.
Задачи данной работы:
Изучить методы решения задач быстродействия
Изучить решение канонической задачи быстродействия, основанной на
min-проблеме моментов А. А. Маркова
Построить программу для численной реализации решения задач
быстродействия близких к каноническим.
Один из методов основан на принципе максимума Понтрягина [3, 4, 15,
17]. Другой метод предложенный В.И. Коробовым и Г.М Скляром - на основе
min проблеме моментов Маркова [11].
Структура
выпускной
квалификационной
работы
состоит
из
введения, четырёх разделов, а также заключения, списка используемой
литературы и приложений.
3
1. ПОСТАНОВКА ЗАДАЧИ БЫСТРОДЕЙСТВИЯ
1.1. Общая постановка задачи оптимального управления. Динамика
объекта.
Динамический объект – это объект, который меняется во времени. Задачу
оптимального управления определяет наличие динамического объекта. Набор
параметров
( )
( ), описывает положение объекта в каждый момент
времени .
Вектор
( )
(
( )
( ))
- это фазовый вектор объекта. Считают, что объект снабжен рулями, от
положения которых зависит его поведение. Набор параметров
( )
( )
характеризует положение рулей в каждый момент времени t.
Вектор
( )
(
( )
( ))
называют управлением или управляющим параметром объекта. В момент
времени t состояние объекта от того, какие значения принимает управление u(t)
до момента времени t.
Разные динамические объекты рассматривают в зависимости от того, как
выражается зависимость вектора фазового состояния ( ) от управления ( ).
Эту зависимость можно описать системой дифференциальных уравнений
̇
(
)
(1.1)
4
Зная значения управления ( ) в каждый момент времени t, можно определить
траекторию объекта ( ) как решение дифференциального уравнения
(
̇
Если допустить что
( ))
динамика объекта задана, т.е. закон изменения
вектора состояния ( ) в зависимости от изменения вектора управления ( ).
Управление
( ) в конкретных физических объектах может не быть
произвольным. Из физического смысла управления вытекают определенные
ограничения.
( ) — тяга двигателя, то в каждый момент времени
Например, если
она должна удовлетворять ограничению
( )
При этом тяга
( )может принимать также и крайние значения
и
. Предполагается, что в каждый момент времени вектор управления ( )
удовлетворяет ограничению
()
(1.2)
,
где U — некоторое заданное множество. Часто, в конкретных физических
объектах множество U замкнуто. Эта замкнутость в общем случае не позволяет
исследовать
поведение
управляемого
объекта
методами
классического
вариационного исчисления. Кроме ограничения вида (1.2) могут быть
наложены ограничения на зависимость управления ( )от времени. Например,
из физического смысла допустимыми управлениями могут быть либо кусочнонепрерывные, либо непрерывные, либо гладкие функции т.п.
Начальное и конечно состояние объекта. Пусть, задан начальный
момент времени
и множество допустимых начальных состояний объекта
.
5
Нужно управлять объектом так, чтобы в какой-то конечный момент времени
объект перешел на некоторое множестводопустимых конечных состояний
.
Тогда допустимое управление ( ) переводит объект из множества начальных
состояний
на множество конечных состояний
на отрезке времени [
].
Фазовое состояние объекта x(t) соответствующее этому управлению
()
удовлетворяет условиям
( )
( )
(1.3)
Конечный момент времени
может быть не фиксированным, а
определяться из условия попадания вектора ( ) на конечное множество
Предположим, что допустимые множества
и
.
заданы.
Критерий качества. Иногда управляемый объект можно перевести из
множества
на множество
разными способами. Среди таких переходов
выбирается наилучший. Принято, что каждому допустимому управлению ( ),
], и соответствующей ему траектории объекта ( )
заданному на отрезке [
сопоставлено некоторое число J, оценивающее качество пары
( ),
( ), т.е.
задан функционал, или критерий качества ( ( ) ( ))
Этот функционал может иметь вид
( ( ) ( ))
∫
(
( ) ( ))
(1.4)
Задача оптимального управления заключается в нахождении таких
допустимого управления u*(f) и соответствующей ему траектории объекта
x*(t), переводящей объект из множества начальных состояний
конечных состояний
на множество
, что при этом функционал качества J(u(f), x(t))
принимает минимальное значение, т.е.
6
J(u*(f), x*(t)) = min J(u(f), x(t)).
Здесь минимум берется по всевозможным допустимым управлениям ( )
и соответствующим траекториям
начальных состояний
( ), переводящим объект из множества
на множество конечных состояний
.
1.2 Основные вопросы математической теории оптимального управления.
Управляемость. Если есть хотя бы одно допустимое управление, тогда
объект управляем из множества
. Это управление
пере-
водит динамический объект из множества начальных состояний
на
множество конечных состояний
управление
на множество
. Получается, существует такое допустимое
( ), при котором соответствующий вектор фазового состояния
( ) удовлетворяет условиям (1.3). Если такого управления нет, постановка
задачи теряет смысл.
Если вопрос об управляемости решается положительно, и получается, что
существует какое-то управление ( ), которое переводит объект из множества
на множество
, то нужно узнать, существует ли оптимальное управление.
При решение какой-то конкретной задачи, инженеры, не задаются этим
вопросом. Они просто пытаются найти наилучшее управление. В математике
этот вопрос является самым главным, если оптимального управления не
существует, то дальнейшие поиски его становятся бессмысленными. В математике всегда есть модель реального физического объекта, и если в модели
отсутствует оптимальное управление то это, скорее всего, указывает на то что
модель построена неправильно.
Необходимые
условия
оптимальности.
Допустим,
оптимальное
управление существует, тогда нужно развивать методы для нахождения
оптимального управления. В простых задачах допустимых управлений, может
оказаться бесконечно много. Допустимые управления переводят объект из
множества начальных состояний
на множество конечных состояний
.
7
Поэтому просто перебрать все возможные допустимые управления не удается.
Тогда встает вопрос, как же сузить класс управлений, которые похожи на
оптимальность. Ответить на этот вопрос позволяют необходимые условия
оптимальности.
Множество
допустимых
управлений,
удовлетворяют
оптимальным условиям, среди этих управлений и нужно искать оптимальное
управление.
Достаточные условия оптимальности. Несмотря на то, что необходимые
условия оптимальности позволяют сузить класс управлений, подозрительных
на оптимальность, этот класс остается широким. Что бы отобрать оптимальное
управление
в
этом
широком
классе,
нужны
оптимальности. Пусть некоторое управление
достаточные
условия
( ) из этого класса будет
удовлетворяет достаточным условиям оптимальности, это гарантирует его
оптимальность. Если случиться, что достаточным условиям оптимальности
удовлетворяет не одно, а два,
или даже несколько управлений. То
гарантируется, что все они оптимальны, значит, функционал качества
принимает на всех этих управлениях одинаковое минимальное значение.
Единственность
оптимального
управления.
Очень
важно
знать,
единственное ли оптимальное управление. Если оно да, то в определенных
управляемых объектах реализация этого единственного оптимального управления
окажется
намного
проще.
Поэтому
вопрос
оптимального управления является основным вопросом
о
единственности
математической
теории оптимального управления.
Конечно это не все вопросы, которые возникают при решении задачи
оптимального управления. Естественно, что эти вопросы могут исследоваться
для
конкретного
управляемого
объекта
не
обязательно
в
той
последовательности, в какой они здесь приведены. Например, сначала
установлено то, что оптимальное управление существует, и найдено
единственное допустимое управление ( ), которое переводит объект из
множества начальных состояний
на множество конечных состояний
8
удовлетворяющее
необходимым
условиям
оптимальности,
тем
самым
гарантируется, что это управление ( ) оптимально.
Простейшая задача оптимального управления — линейная задача
быстродействия. В этой задаче динамика объекта описывается системой
линейных дифференциальных уравнений
̇
где
(1.5)
,
— n-мерный вектор фазового состояния объекта, А — постоянная
матрица размером nхn, u — n-мерный вектор управления, на который наложено
ограничение ( )
. Если известна допустимая функция управления
начальное состояние объекта ( )
() и
,то единственная функция ( ) вектора
фазового состояния объекта вычисляется как решение дифференциального
уравнения (1.5).
Начальное и конечное состояния объекта будем выбирать как элементы
некоторых непустых и компактных подмножеств
и
соответственно из n-
мерного фазового пространства. Критерием качества будет служить время
перехода из множества,
на множество
, т. е.
( ( ) ( ))
.
Этот критерий качества получается из (1.4), когда подынтегральная
функция имеет вид
(
( ) ( ))
Линейная задача быстродействия заключается в нахождении допустимого
управления u*(t) и соответствующего ему решения x*(t) уравнения (1.5),
переводящего объект из множества начальных состояний
конечных состояний
на множество
за минимальное время.
9
Преимущества линейной задачи быстродействия.
Во-первых, для линейного дифференциального уравнения (1.5) можно
получить зависимость траектории
( ) от управления
( )в явном виде. Это
позволяет эффективно исследовать все основные вопросы математической
теории оптимального управления.
Во-вторых, на примере линейной задачи быстродействия достаточно ярко
проявляются
все
характерные
трудности,
присущие
общим
задачам
оптимального управления.
2. РЕШЕНИЕ ЗАДАЧИ БЫСТРОДЕЙСТВИЯ НА ОСНОВЕ
ПРОБЛЕМЫ МОМЕНТОВ МАРКОВА
MIN-
2.1 Min-проблема моментов Маркова
Классическую
(-L,L)
проблему
моментов
Маркова
можно
сформулировать следующим образом.
Дана последовательность непрерывных на [a,b] функций
{
( )}
.
Требуется:
1) Найти условия, которым должен удовлетворять вещественный вектор
}, если известно, что существует хотя бы одна измеримая
S={
функция f(t),
∫
. Такая, что
( ) ( ) , k=1,…, n; | ( )|
.
2) Исследовать некоторые простейшие функции f(t) для заданного
вектора S.
Min-проблема моментов заключается в том, что для любых заданных
моментов S указать минимальный возможный отрезок
и функцию
( ) такие что
∫
( ) ( ) , k=1,…,n; | ( )|
.
10
Если
( )
Если
( )
, то степенная проблема моментов.
(
)
, то тригонометрическая проблема моментов.
Критерий управляемости для ̇
.
Рассмотрим задачу
,| |
̇
( )
( )
А- матрица n n, b-вектор-столбец.
)
Система управляема тогда и только тогда, когда rank(
Решение. ( )
(
( ))
∫
.
,
учитывая, что
( )
( )
,
,
можно записать:
∫
( )
– заданная начальная точка.
Для
оптимальности
по
быстродействию
постоянная, принимающая значения
вещественный
спектр,
то
число
( )
функция
кусочно
. Кроме того, если матрица A имеет
точек
разрыва
не
превышает
n-1
(т. Фельдбаума).
Обозначим
=
– точка разрыва функции
называются моментами переключения; ̃
( ), которые
– управление на [
].
Решение задачи быстродействия сводится к нахождению времени
быстродействия
= , рода управления
̃
и моментов переключения
.
Таким образом, если
∫
( ) ()
, g(t)=
– проблема моментов,
, то задача сводится
.
11
2.2 Решение канонической задачи
Для решения задачи:
| |
̇
(2)
̇
( )
Введем
(
)
( )
две
(
последовательности
) следующими уравнениями:
(
)
|
|
(
)
|
|
Обозначим через ̃
Если ̃
полиномов
(
(
)
(
)
(
)
)
управление на последнем интервале
, то ̃ будем называть управлением первого рода, если ̃
, то
это управление второго рода. Вводится в рассмотрение последовательность
полиномов
(
̃) следующим образом:
12
(
̃)
{
(
(
)
)
̃
̃
(
Тогда, используя равенства (2.1) и (2.2). последовательность
)
(
⃗)
можно получить из аналогичных уравнений:
̃
(
)
|
|
(
(
) ̃
Обозначим правые части равенств (2.4), (3.8) и (3.9) через
)
, т.е
(
)
)
(
)
)
(
)
(
)
(
(
̃
Очевидно, что
{
̃
̃
(
)
13
Раскрывая определитель в равенстве (2.4) по последнему столбцу,
получим
∑
Отсюда следует рекуррентная формула для
̃
(
Аналогичным
(
)
(
)
∑
образом
(
(
)
:
последовательности
полиномов
̃)
)
|
|
(
)
(
̅̅̅
)
)
введем
(
̅̅̅
(
|
(
)
(
)
)
|
(
)
14
̅
̃
(
)
|
|
(
(
)
(
)
(
)
(
)
(
)
(
)
) ̃
Откуда видно, что
̅̅̅(
̅̅̅(
{ ̅̅̅
(
̃)
)
)
̃
̃
Обозначим правые части равенств (2.9), (2.10) и (2.11) через
соответственно, т.е
̅̅̅
(
)
(
)
̅̅̅̅
̅̅̅̅
(
)
̅̅̅
{
̃
Очевидно, что
̅̅̅̅
̅̅̅̅
̃
̃
15
Раскрывая определитель в равенстве (2.11) по последнему столбцу,
получим равенство, аналогичное (2.7):
̅̅̅
∑ ̅ ̅̅̅̅̅̅
̅̅̅
(
)
(
)
Отсюда следует рекуррентная формула, аналогичная (2.8):
̃
̅
̅
(
∑ ̅ ̅̅̅̅̅̅)
Замечание. Канонические переменные
можно вычислять, используя
явную формулу
(
)
|
|
|
|
(
если в данной формуле заменить
)
на ̅̅̅ и ̅̅̅. соответственно, то
получим аналогичную формулу для вычисления переменных ̅̅̅.
Из равенств (2.5) и (2.13) видно, что
̅̅̅
Дополним систему (2) уравнением
̅̅̅̅
̅̅̅̅
и рассмотрим систему
16
̇
̇
̇
(
)
Тогда имеет место следующее утверждение.
Утверждение
1.1.
(
Полиномы
̃)
удовлетворяют
системе
дифференциальных уравнений
̅̅̅̇
(
)̅̅̅̅̅̅
(
)
(
)
и системе
̅̅̅̇
̅̅̅̇
̅̅̅̅̅̅
где производные ̅̅̅̇ в (2.19) и (2.20) берутся в силу системы (2.18) с
̃
управлением
̃ соответственно.
2.3 Уравнения для нахождения всех моментов переключения
В [11] описан аналитический метод нахождения времени быстродействия
и рода управления ̃ для канонической задачи быстродействия.
Используется последовательность определителей Маркова:
|
|
|
|
|
|
|
|
17
Время быстродействия
уравнения
( (
)
является наибольшим вещественным корнем
(
)
( (
)
(
При этом если наибольший вещественный корень
уравнения
( (
то ̃
)
(
получается из
))
(управление 1-го рода);
если наибольший вещественный корень
( (
то ̃
))
)
(
получается из уравнения
))
(управление 2-го рода).
Теорема. Пусть для системы (3) время оптимального быстродействия .
Тогда моменты переключения
, оптимального управления ( )
определяются как корни следующих уравнений:
1) для
|
(
|
для нахождения четных моментов переключения
)
,и
18
̅
̅
|
|
̅
̅
̅
̅
̅
̅
|
|
(
для нахождения нечетных моментов переключения
)
;
2) для
̅
|
̅
̅
̅
̅
̅
|
для нахождения четных моментов переключения
|
(
)
(
)
,и
|
для нахождения нечетных моментов переключения
.
Замечание. Уравнение для нахождения всех моментов переключения (четных и
нечетных (
) в случае
можно записать в следующем виде:
|
||
|
|
|
(
)
а уравнение для нахождения всех моментов переключения для случая
19
|
||
(
|
)
( ) время быстродействия
Поскольку для заданной начальной точки
определено, то в левых частях равенств (2.25) и (
- известные
)
числа, тогда левые части равенства представляют собой уравнения степени n - 1
относительно z, корнями которых являются все моменты переключения и
только они.
Рассмотрим
еще
одну
систему
относительно
вспомогательных
переменных
̇
где
матрица, транспонированная к матрице А. Решение этой системы
вектор с
компонентами
(
),
который
является
опорным
вектором к области управляемости системы
,| |
̇
( )
( )
(
,
(*)
)
в начальной точке ( ). Оптимальное управление
( )
(
Скалярное произведение (
)
(
(
)
(2.27)
) ) представляет собой полином
20
(
)
(
∑
)
(
)
Корни этого полинома согласно равенству (2.27) являются моментами
переключения. Следовательно, полином (
) с точностью до постоянного
множителя совпадает с левой частью уравнения (2.25) при
и с левой
частью уравнения (2.26) при
. Если записать левую часть
вышеуказанных уравнений в виде
то
(
)
То есть вектор с компонентами
(
(
)
(
)
(2.29)
является опорным вектором к области управляемости системы(*).
Пример.
Рассмотрим теперь задачу быстродействия для системы (3) при n = 6 из
(
начальной точки
(
)
(
(
̅(
) в начало координат.В этом случае р = 3,
)
)
)
(
(
̅̅̅(
)
)
(
)
)
̃
̅̅̅(
)
21
̅(
)
(
)
Находим время оптимального быстродействия
( )
√
и род управления, которое является управлением второго рода, т.е. ̃
Из (
.
) находим, что уравнение для нахождения четных моментов
переключения имеет вид
|
или
Из (
|
, корни этого уравнения.
) находим, что уравнение для нахождения всех нечетных
моментов переключения имеет вид
|
или
|
, корни этого уравнения
√
√
22
3.
АНАЛИТИЧЕСКОЕ
РЕШЕНИЕ
ЗАДАЧИ
БЫСТРОДЕЙСТВИЯ,
БЛИЗКОЙ К КАНОНИЧЕСКОЙ.
Рассмотрим задачу оптимального быстродействия для автономной
линейной системы:
| |
̇
( )
( )
(
где
(3)
)
время оптимального быстродействия.
Пусть матрица
имеет вещественный спектр
В этом случае
число точек переключения (точек разрыва функции ( )) будет не более
, (
Обозначим моменты переключения через
.
) Время
оптимального быстродействия
является корнем некоторого полинома,
коэффициенты
функции
которого
есть
начальной
точки.
Моменты
переключения есть корни полиномов, коэффициенты которых зависят от
времени быстродействия и начальной точки. В статье [17] для матриц А с
произвольным спектром предложен метод сведения к задачам быстродействия
с матрицей А, допускающим точное решение. Задача быстродействия в этом
случае сводится к отысканию неподвижной точки некоторого отображения, а
для ее нахождения методом последовательного приближения на каждом шаге
используется решение системы (3), допускающей точное, решение.
3.1 Непрерывная зависимость моментов переключения от спектра
матрицы в линейной задаче быстродействия.
Пусть ( ) — оптимальное по быстродействию управление, переводящее точку
из
, тогда
∫
( )
(3.1)
23
или
∑
( )
∫
(3.2)
( )
здесь
Теорема 1.1. Пусть матрица А удовлетворяет следующим условиям:
1)
собственные значения
вещественные;
2)
в области изменения спектра жорданова форма и кратность спектра не
меняются;
3)
( )
начальная точка
находится вне поверхности переключения.
Тогда моменты переключения
спектра
являются гладкими функциями от
матрицы А системы (3.8).
,(
Доказательство. Пусть
) — все различные собственные
значения матрицы А кратности, соответственно,
. Пусть А* —
матрица, сопряженная к матрице Л. Пусть
— корневые векторы
максимальной высоты (
, соответственно) матрицы А*, отвечающие
собственным значениям
, (
(
—
)
—
корневые
векторы
).
Обозначим
— ,
высоты
(
собственному значению
отвечающие
), эти векторы
образуют базис пространства Rn. Умножим скалярно обе части равенства (3.2)
на вектор
.
(
)
∑ ∫(
(
) ( )
)
Преобразуем выражение стоящее в правой части
24
(
)
∑ ∫(
)
учитывая что
∑(
)
(
)
можно записать
(
)
(
) ̃ ∑
(
(
)
)
(
) ∑(
)
∫
Здесь и далее ̃ — управление на конечном промежутке [
быстродействие оптимальное и | |
], так как
, то ̃ может принимать значения либо
+1, либо -1, т.е. ̃ = ±1.
Рассмотрим систему уравнений относительно
(
(
)
(
) ̃ ∑
(
(
:
)
)
)
(
) ∑(
)
∫
(
Так как
)
то система (3.12) состоит из n уравнений. Найдем
частные производные функции
(
)
(
̃ ∑
) по
(
(
)
)
(
(
)
)
(
)
25
̃ ∑
(
(
)
)
(
)
( ) и собственных значений
Пусть для данной начальной точки
матрицы А моменты переключения
. Так как началь-
ная точка находится вне поверхности переключения и быстродействие
оптимальное, то выполняются неравенства
= .
< ... <
Якобиан системы (3.3)
( )
( )
(
|
(
|
)
)
̃(
(
̃∑
̃(
)
)
(
(
̃∑
)
)
)
)
|
(
)
|=
(
)
̃(
̃(
)
)
)
|
|
(
)
(
̃∑
)
(
̃∑
)
(
)
(
)
)
|
=(
)
(
)
|
̃
)
|
Здесь
(
)
(
(
)
(
(
) (
)
)
так как система (3) управляемая;
(
)
|
(
)
(
) (
)
)
26
полученный определитель представляет собой систему функций Чебышева и,
следовательно, отличен от нуля при
и попарно неравных
.
Следовательно Якобиан системы (3.3)
( )
( )
в точке
(
;
).
В силу теоремы о неявных функциях, система (3.3 определяет в некоторой,
окрестности точки (
) однозначные функции
(
)которые
являются непрерывными и имеют непрерывные частные производные по всем
аргументам.
Теорема доказана.
■
3.2 Непрерывная зависимость решения задачи управления от параметра и
начальных данных.
Рассмотрим более общую задачу
(
)
задачу отыскания минимума функционала
( ( ) ( ) ( )
∫
(
)
(
)
где
(
̇
( )
здесь
)
(
(
)
)
(
( )
(
)
)
27
( )
В дальнейшем будем предполагать, что функции
удовлетворяют условию Липшица по
(
) и
(
)
и непрерывны по и при всех
.
Каждому
значению
параметра
и
которой можно попасть в точку
каждой
точке
,
из
, в силу системы (3.6), за конечное
время T, сопоставим наименьшее значение функционала (3.5). Такуюфункцию обозначим через F(
), т.е.
(
)
∫
(
)
(3.7)
В работе [21] доказана непрерывная зависимость функции F(x0,
начальной точки
) от
. Рассмотрим вопрос о непрерывной зависимости
оптимального значения функционала (3.5) от двух переменных х0 и ,
)
область
точку за время, не большее
Пусть
Обозначим
при
(
через
(
, т.е.
) = 0 (
в
— точка покоя системы (3.6)
).
).
, для которых существуют управления
) позволяющие перевести точку
в точку
за конечное время, а С —
которые можно перевести в точку
время: Рассмотрим те точки множества
за конечное
(
, для которых время
движения по оптимальной траектории задачи (3.5)-(3.6) из точки
не более, чем
(3.6)
— внутренняя точка множества
Пусть L — множество точек
множество точек
системы
— внутренняя точка множества (
Будем полагать, что точка
(
управляемости
)
в точку
, если таковая существует. Если же оптимального
управления, переводящего
для данной точки
и данного
не
существует, то рассмотрим минимизирующую последовательность управлений
{
}
по траекториям {
переводящих точку
(
)} за
время { (
)}. Пусть минимизирующая последовательность управлений
такова, что
(
)
Совокупность описанных выше
(
точек обозначим через
что
множество
(
)
)
( ). В дальнейшем будем предполагать,
( )ограничено
(в
противном
случае
28
рассматриваем его любую ограниченную часть), т.е. М
ограниченный замкнутый шар. Теорема 3.1 Если точка
(
точкой в области управляемости
то функция (
является внутренней
) при всех
) непрерывна на множестве
(
Доказательство. Покажем, что при
G, где G —
( ),
и всех
(
)
)и
( )
( ) функция (
непрерывна, т.е. для любого наперед заданного
)
существует
такое, что
(
если |
|
Зададим
|
|
(
)
)
(
)
(3.8)
( )
. Докажем сначала справедливость левой части
(3.4). Пусть {
( )} минимизирующая последовательность, переводящая
согласно системе (3.9) при
(
время
неравенства
точку
)
в точку
(
(
)
по траекториям {
} за
). Поскольку
( ( ) ( )
∫
)
то можно выбрать так k, чтобы
(
( (
)
∫
(
Определим на отрезке
( )
( )
( )
)
( ) )
решение
. Функции
( )
( )
(
)
( )
(
( )
( ) системы (3.6) при
)
)
, ( )
( )
∫ (
( )
( ) )
29
( )
В силу предположения |
|
где
и
( )
∫ (
( )
|
|
( )
∫ (
( ) )
( )|
( ) )
∫ (
|
|
∫|
( )
( ) )
( )
|
( )|
онстанты ип и а
По лемме Гронуолла-Беллмана можно записать:
|
( )
( )|
Так как точка
(|
|
( )) с центром в точке
(
). Потребуем, чтобы
радиуса
{
тогда, полагая |
|
|
(
)
( )
|
( )
Таким образом, точка
( ))
| )
( ), принадлежащий множеству
}
|
( )|
)
), то существует шар
( )
:
|
( )|
( ) принадлежит шару
то точку
допустимым управлением ̅ ( ) в точку
время
(
(
— внутренняя в множестве
(
(
|
( )
(
( )), а так как
( ) можно перевести некоторым
в силу системы (3.6) при
за
.
Обозначим через
( ) следующее управление:
( )
Управление
{
( )
̅ ( )
( ) переводит за время
систему (3.9) при
точку
в точку
в силу
по траектории
30
{
( )
̅ ( )
( )
Покажем, что значение функционала (
(
) близко к
)
Оценим величину
|(
( ( )
|∫
)
(
( ) )
)|
(
∫
( )
)
|
(3.11)
Нетрудно видеть, что
∫ | (
( )
)
(
( )
( ) )|
| (̅̅̅( )̅̅̅( ) )|
∫
В силу предположений можно записать, что
| (
( )
| (
где
( ) )
( )
(
( )
( ) )
( ) )|
|
( )
(
( )
( )
)|
|
( ) )
(
( )
( )
)|
( )|
|
- константы Липшица.
Тогда
∫| (
( )
(|
|
|
Если теперь на
|
|
| )
| (
|
)|
||
наложить дополнительные ограничение, чтобы
{
то при |
|
|
|
∫| (
(
)
}
|
( )
( ) )
( ( )
( ) )|
Оценим второе слагаемое выражения (3.10), для чего обозначим через
| (
)| при
( )
(
) , и положим
тогда
∫ | (̅̅̅( ) ̅̅̅( ) )|
31
| (
Поэтому
из
)
этих
(
)|
неравенств
(
что
)
(
{
и
(
)
но так как (
),
неравенства
|
если
(
)
(
следует,
(3.7)
|
), то
|
|
)
(
)
}
Справедливость правой части неравенства (3.8) доказывается аналогично.
Пусть { } минимизирующая последовательность, переводящая согласно
системе (3.9) при
(
по траекториям { ( )} за время
точку
)
Снова выбираем такое , чтобы выполнялось
неравенство
(
)
(
)
(3.12)
прежние.
Затем
из
точки
определяем
( ( ̇)
на отрезке
решение
уравнения
( ) )
. Применяя, как и ранее, лемму Гронуолла-Беллмана, можно
показать, что
| ( )
( )|
(
)
тогда
| ( )
Следовательно, точку
системы (3.9) при
( )|
| ( )
|
(
)
( ) можно перевести по траектории ̅ ( ) в силу
допустимым управлением ̅ ( )в точку
за время
. Как и ранее, можно показать, что
| (̅
)
(
)|
(
)
где
̅( )
{
( )
̅( )
}
32
Тогда из неравенств (2.8), (3.13) и неравенства ( ̅
что
(
)—
(
)
если |
)
|
{
|
) следует,
|
. Теорема
доказана.
3.3
Численный
метод
решения
задачи
оптимального
быстродействия, основанный на точном решении.
Пусть для
задачи
(
матрица А имеет спектр
(3)
и известны моменты переключения
)
. Рассмотрим задачу
оптимального быстродействия:
| |
̇
( )
( )
( ̃
Пусть
матраца
̃
имеет
(3.14)
̃
)
(
спектр
),
незначительно
отличающийся от спектра матрицы А, причем кратность спектра матриц
̃ и А совпадают и начальные точки
( )
для задач (3) и (3.14) лежат
по одну сторону от поверхности переключения.
Гладкая зависимость моментов переключения от спектра матрицы позволяет по
известным моментам переключения задачи (3), используя метод Ньютона,
находить моменты переключения для задачи (3.14).
Представим спектры матриц
(
)
соответственно;
̃
(
и А в виде векторов
пусть
векторы
(
)
)
(
) задают моменты переключения длл задач (3.1) и (1) соответственно.
Обозначим
и
(предполагается, что |
| и |
достаточно малы). Представим систему функций (3.3) в виде векторного
уравнения (3), где
(
) — n-мерный вектор, координатами которого
являются левые части уравнений (3.3).
33
Разложим
(
функцию
)
в
ряд
) по степеням
(
разложения. Учитывая, что (
(
)
в
окрестности
точки
и оставим только линейную часть
) = 0, получим:
(
где
Тейлора
)
(
)
(
)
(
)
(
)
(
)
матрица Якоби
(
(
Как было доказано
))
(
(
(
))
(
)
) .
Тогда из (3.2) получим
(
(
))
Таким образом можно построить итерационный процесс:
(
)
(
( )
(
(
))
Здесь по известному начальному приближению
)
( )
(3.18) находим
и подставляем в (3.17) и т.д. В результате получаем последовательность
( )
( )
близко к
( )
которая сходится к Т, если точка
находится достаточно
.
Для системы функций (3.3) линейная часть (3.15) имеет вид:
(
) ̃(
∑
)
∑
(
(
)
)
(
(
(
)
(
) (
)
(
) ∑(
)( ∑ (
)
)
) (
∫
)
)
34
( )
Из последнего равенства, полагая, что
( )
для
итерационного процесса (3.17) можно выписать систему из n линейных
( )
уравнений относительно
(
∑ ∑
∑
:
)
(
(
(
)
)
(
(
)
)(
)(
( )
( )
( )
)
( )
)
( )
( )
( )
(
)
)
̃(
∑
(
)
(
(
)
) ∑(
)
∫
( )
Учитывая, что
∫
(
) (
∑
систему уравнений относительно
∑ ∑
∑
(
)
(
(
(
)
( )
(
)
)
∑
(
)
можно записать в виде:
)(
)(
( )
( )
)
( )
)
( )
( )
( )
35
(
)
)
̃(
( ∑(
(
∑(
)
) (
( )
) (
( )
(
)∑
( )
)
( )
)
)
Ниже рассмотрим два частных случая численного решения системы (3).
Рассмотрим систему (3) у которой матрица А имеет вид:
(
)
( )
Тогда система (3) запишется в виде
| |
̇
̇
(3.19)
При
для которой известно
аналитическое решение. Найдем расчетные формулы
для численного решения задачи (3.19). За начальное приближение будем
принимать решение канонической задачи.
Предположим, что собственные значения
„ матрицы А попарно
неравны и отличны от нуля.
Возьмем матрицу
отвечающие
рез
, сопряженную матрице А, и ее собственные векторы,
собственным
значениям
обозначим
че
, соответственно, они имеют вид:
36
(
( )
(
)
)
(
(
)
)(
∏
(
)(
)
(
.
)
)
Умножим обе части равенства (1.2) на собственный вектор
(
)
∑∫
(
( ))
( ))
(
( ))
матрицы
(
:
)
Так, как
(
(
) ( )
то равенство (3.20) можно записать в виде:
(
)
∑∫
(
(
) ( ))
Проинтегрировав в правой части, получим:
(
)
(
)
̃
[ ∑(
)
(
)
(
]
)
Используя выражения для собственных векторов можно записать :
(
(
)
)
∑
∏
(
)
(3.22)
Из равенства (3.21) и (3.22) получаем:
(
)
̃
[ ∑(
)
(
)
]
37
∏
(
)
((
̃
)
[ ∑
(
∑
∏
∑
(
)
(
(
)
)
]
)
(3.22а)
а из равенств (3.21) получаем:
(
) ̃ (
)
Пусть при спектре
(
)
)
(3.23)
матрицы А известны моменты переключения
Предположим, что
спектру
( )
моменты переключения
„
( )
соответствуют
тогда равенства (3.23)
запишутся в виде:
(
) ̃ (
)
(
∑(
)
(
( )
( )
( )
(
)
( )
)
)
Разложим правую часть полученного равенства в ряд Тейлора, ограничиваясь
линейными членами разложения:
(
) ̃ (
)
(
)
∑(
( )
(
( )
)
( )
( )
( )
( )
)
Откуда получаем систему линейных алгебраических уравнений относительно
( )
( )
( )
(∑ (
∑(
)
)
( )
( )
( )
(
)
(
)
( )
( )
(
( )
) ̃ (
)
)
38
( )
Решаем эту систему относительно
(
) используя метод Гаусса
или любой другой, метод решения систем линейных алгебраических уравнений,
и находим
( )
( )
( )
( )
принимаем за следующее приближение и,
таким образом, получаем итерационный процесс, определяемый системой
уравнений:
(∑ (
∑(
(
( )
)
( )
( )
)
)
)
(
)
(
( )
(
( )
( )
из которой выходит что
(
)
)
) ̃ (
( )
)
( )
(
)
Рассмотрим теперь случай, когда спектр матрицы А системы (3.19) кратный, то
есть
. Тогда эта система запишется в виде:
| |
̇
̇
(3.24)
Учитывая, что для системы (3.24)
(
(
( )
(
)
)
)
решение (1.1) системы (3.24) можно записать в виде:
(
)
(
)
∫
( )
(3.25)
Интегрируя правые части выражений (3.25), получим:
39
(
)
( ∑(
̃
)
[(
̃
(
)
( ∑
)
(
(
)
)
)
(
)
)
]
(3.26)
Перепишем равенства (3.26) в виде
(
(
)
) ̃
∑(
) (
̃(
)
(
)
∑(
)
(
)
)
Как и в случае некратного спектра, предположим, что для собственного
значения ° матрицы системы (3.24) известны моменты переключения
( )
( )
( )
Пусть собственному значению
( )
переключения
( )
соответствуют моменты
Проводя те же самые рассуждения,
что и в случае некратного спектра, получим систему, линейных уравнений для
определения
( )
для случая кратного спектра.
∑(
(
) ̃
∑
(
(
)
( )
( )
∑(
) (
( )
)
(
(
)
( )
)
(
( )
(
( )
)
)
)
(
(
)
( )
)
)
(3.27)
40
(
(
)
)
̃(
(
(
( )
)
) (
)
(
)
( )
∑(
(
)
(
)
)
( )
По найденным из системы (3.27)
(
( )
(
) (
)
( )
( )
)
)
( )
( )
При заданной точности , вычисления производятся как для случая кратного,
так и для случая некратного спектра, до тех пор, пока на m-ом шаге не будет
выполнено одно из неравенств:
√∑ (
где
( )
( )
√∑ (
)
( )
( ) — координаты начальной точки, а
)
определяются из формул
(3.22а) для случая некратного спектра или из формул (3.26) для случая кратного
спектра заменой х* на в указанных формулах.
За
начальное
приближение
принимаются
моменты
переключения,
соответствующие канонической системе, которые можно найти аналитически.
Если расстояние между точками
(
)
(
) достаточно
велико, то описанный метод может расходиться. В этом случае отрезок
разбивают на конечное число достаточно малых отрезков и на каждом из этих
отрезков применяем описанный метод, причем, на очередном шаге за
начальное приближение берем моменты переключения, полученные на
предыдущем шаге.
41
Пусть для канонической системы моменты переключения
( )
( )
( )
Тогда для системы
| |
̇
̇
известно аналитическое решение и моменты переключения могут быть
найдены по формуле:
(
Пусть
(
точка
( )
)
)
(3.28)
собственные
значения
матрицы системы (3.19) или (3.24) находятся в окрестности прямой
(3.29)
Λ2
L’
L
Λ1
Пусть точка
точке
L.
(
Тогда
) находящаяся на прямой (3.29), - ближайшая к
итерационный
соединяющему точки
процесс
удобно
строить
по
отрезку,
, при этом, за начальное приближение на первом
шаге следует брать моменты переключения, соответствующие точке
, т.е.
42
соответствующие
спектру
когда расстояние от точки
.
Это
удобно
использовать,
меньше, чем до начала координат. .
Рассмотрим примеры.
Для канонической задачи
| |
̇
̇
̇
̇
( )
(
) ( )
̇
(
)
моменты переключения
(3.30)
и управление на конечном промежутке ̃
Используя эти данные, описанным методом было получено решение для задачи
| |
̇
̇
̇
( )
(
) ( )
(
)
̃
Вычисления проводились с шагом изменения
равным -0,5 и точность
Для задачи
| |
̇
̇
43
̇
( )
(
) ( )
(
)
ближайшая точка на прямой (3.29) к точке (
) является точка
(
)
Так как расстояние от точки (
) до начала координат больше,
чем до точки L, то за начальное приближение удобнее брать на решение (3.30)
каноническом системы, а, используя решение (3.30) и формулу (3.28 получить
решение для системы
| |
̇
̇
̇
̃
которое принять за начальное приближение для задачи (3.19), а итерационный
процесс строить по прямой, соединяющей точку (-6,2; —6,3; -6,4) с точкой L.
Было получено решение задачи (3.19):
̃
—
при этом отрезок прямой, соединяющий вышеуказанные
точки, делился на четыре части, вычисления производились с точностью
.
4. ПОСТРОЕНИЕ ЧИСЛЕННОГО РЕШЕНИЯ
Для численной реализации методов был выбран программный продукт
maple.
В ходе компьютерных экспериментов создаются разные подходы к
задаче, анализируются частные решения, а также при программировании
возможна сортировка фрагментов, которые требуют особой скорости, все это
44
происходит с помощью программы maple, которая представляет для них
удобную среду. С помощью программ можно создавать интегрированные
среды, которые взаимодействуют с другими системами, а так же используют
универсальные языки программирования высокого уровня. При окончательном
результате произведенных расчетов, для оформления проделанной работы,
можно использовать средства пакета maple, который предоставит возможность
визуализировать полученные данные и подготовить
иллюстрации для
публикации.
Ниже представлена таблица, в которой сравниваются два метода.
Табли а 4.1
Порядок
Шаг
Количество итераций
От нуля
От прямой
5
0.01
318
100
6
0.01
334
100
6
0.1
80
10
7
0.01
351
100
8
0.01
370
100
8
0.03
180
33
8
0.05
Не сходится
20
9
0.01
390
100
10
0.01
412
100
10
0.1
Не сходится
10
11
0,01
434
100
11
0,1
Не сходится
10
12
0,01
459
100
12
0,1
Не сходится
10
13
0,01
484
100
13
0,1
Не сходится
10
45
СПИСОК ИСПОЛЬЗОВАННЫХ ИСТОЧНИКОВ
1.
Атанс, М., Фалб, П. Оптимальное управление. — М.: Машиностроение,
1968. 763 с.
2.
Ахиезер, Н.И. Классическая проблема моментов. М.: Госиздат, физ.-мат.
литературы, 1961. -310 с.
3.
Благодатских В.И. Введение в оптимальное управление (линейная
теория): М.: Высшая школа, 2001. - 239 с.
4.
Благодатских В.И. Линейная теория оптимального управления. -М. Изд-
во МГУ 1978.
5.
Гамкрелидзе Р.В. Основы оптимального управления. Тбилиси: Изд-во
ТбГУ, 1977. - 264 с.
6.
Гамкрелидзе Р.В. Теория оптимальных по быстродействию процессов в
линейных системах // Известия АН СССР. Серия математическая. – 1958. –
Т.22, №4. – С. 447 – 474.
7.
Коробов В.И. Метод функции управляемости. – М., - Ижевск: НИЦ
«Регулярная и хаотическая динамика», Институт компьютерных исследований,
2007. – 576 с.
8.
Коробов В.И., Иванова Т.И. Отображение нелинейных управляемых
систем специального вида на каноническую систему // Математическая физика,
анализ, геометрия. – 2001. Т. 8, №1. С. 42 – 57.
9.
Коробов, В.И., Скляр, Г.М. Проблема моментов Маркова на минимально
возможном отрезке // Докл. АН СССР. 1989. — Т. 308.-№3,-С. 525-528.
10.
Коробова Е.В., Скляр Г.М. Один конструктивный метод отображения
нелинейных систем на линейные // теория функций, функциональный анализ и
их приложения. – 1991. №55. – С. 68 – 74.
11.
Коробов В.И., Скляр Г.М. Оптимальное быстродействие и степенная
проблема моментов //Мат. сборник.-1987. - 134(176), №2(10). – с.186-206.
12.
Коробов
В.И.,
Скляр
Г.М.,
Флоринский
В.В.
О
нахождении
оптимального времени и моментов переключения в задаче быстродействия //
46
Вестник
Харьковского
университета,
серия
«Математика,
прикладная
математики и механика». – 1999. - № 444, с. 24-43.
13.
Коробов В.И., Флоринский В.В. Методы построения оптимальных по
быстродействию
управлений
для
канонических
управляемых
систем
//Математическая физика, анализ, геометрия. – 1999.- Т.6. № 3/4, с. 264-287.
14.
Крейн
М.Г.,
Нудельман
A.A.
Проблема
моментов
Маркова
и
экстремальные задачи. М.: Наука, 1973. - 551 с.
15.
Ли Э.Б., Маркус Л. Основы теории оптимального управления.- М.:
Наука, 1971. – 574 с.
16.
Минюк С.А. О точном решении задачи быстродействия в случае
линейных стационарных систем // Дифференциальные уравнения. 1996. - Т. 32,
№12. - С. 1645 - 1652.
17.
Понтрягин Л.С., Болтянский В.Г., Гамкрелидзе Р.В., Мищенко Е.Ф.
Математическая теория оптимальных процессов. - М.: Наука, 1976. – 362 с.
18.
Скляр E.B. О классе нелинейных управляемых систем, отображающихся
на линейные // Математическая физика, анализ, геометрия. 2001. - Т. 8, №2. - С.
205 – 214
19.
Скляр Е.В., Флоринский B.B. Новые способы нахождения моментов
переключения
для
некоторых
задач
быстродействия
//IV
Крымская
Международная математическая школа "Метод функций Ляпунова и его
приложения". Тезисы докладов. Симферополь. - 1998. - С. 61.
20.
Хайлов E.H. О моментах переключения экстремальных управлений в
линейной задаче оптимального быстродействия // Тр. Ин-та матем. и мех. УрО
РАН. 1996. -4. - С. 225 - 265.
21.
Коробов В.И. О непрерывной зависимости решения задачи оптимального
управления со свободным временем от начальных данных
47
ПРИЛОЖЕНИЯ
Приложение 1
Численное решение для n = 12
От нуля.
> restart;n:=12;
n := 12
> Digits:=50:
> with(linalg):
Warning, the protected names norm and trace have been redefined and unprotected
> opred:=proc(ga,dd);
if frac(n/2)=0 then
p:=n/2: de:=matrix(p,p);
for i from 1 to p do
for j from 1 to p do
de[i,j]:=ga[i+j]; od; od;
else
p:=(n+1)/2: de:=matrix (p,p):
for i from 1 to p do
for j from 1 to p do
de[i,j]:=ga[i+j-1]; od; od; fi;
dd:=det(de);
### WARNING: `p` is implicitly declared local
### WARNING: `de` is implicitly declared local
### WARNING: `i` is implicitly declared local
### WARNING: `j` is implicitly declared local
48
### WARNING: `p` is implicitly declared local
### WARNING: `de` is implicitly declared local
### WARNING: `i` is implicitly declared local
### WARNING: `j` is implicitly declared local
### WARNING: `p` is implicitly declared local
### WARNING: `de` is implicitly declared local
### WARNING: `i` is implicitly declared local
### WARNING: `j` is implicitly declared local
end:
Warning, `p` is implicitly declared local to procedure `opred`
Warning, `de` is implicitly declared local to procedure `opred`
Warning, `i` is implicitly declared local to procedure `opred`
Warning, `j` is implicitly declared local to procedure `opred`
Error, (in minor) object too large
> i:='i':k:='k':l:='l':
> x:=vector(n,[1,1,1,1,1,1,1,1,1,1,1,1]);
x := [ 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1 ]
> for l from 1 to 2 do u1:=2*l-3;
for k from 1 to n do
g[k]:=(q^k+(-1)^(k+1)*u1*k!*x[k])/2; od;
i:='i':for k from 1 to n do
ga[k]:=(g[k]-sum(ga[i]*g[k-i],i=1..k-1))/k; od;
49
opred(ga,dde);
s1:=evalf(fsolve(dde=0,q));
q[l]:=max(s1);dde:='dde';od:
> ga[0]:=-1:
> if q[1]>q[2] then q:=q[1];u1:=-1; else q:=q[2];u1:=1;fi;
q := 89.439765427807951894965973190461618963207216597933
u1 := 1
> T:=array(1..n,[]):
> i:='i':k:='k':j:='j':
for k from 1 to n do
g[k]:=(q^k+(-1)^(k+1)*u1*k!*x[k])/2;g1[k]:=-g[k]: od:
i:='i':k:='k':for k from 1 to n do
ga[k]:=(g[k]-sum(ga[i]*g[k-i],i=1..k-1))/k: ga1[k]:=(g1[k]sum(ga1[j]*g1[k-j],j=1..k-1))/k: od:
> k:='k':j:='j':l:='l':i:='i':
> if frac(n/2)=0 then
p:=n/2: deev:=matrix(p,p):deev1:=matrix(p+1,p+1):
for i from 1 to p-1 do
for j from 1 to p do
deev[i,j]:=ga[i+j]: od: od:j:='j':for j from 1 to p do
deev[p,j]:=t^(j-1): od;j:='j':i:='i':ga1[0]:=-1:
for i from 1 to p do
for j from 1 to p+1 do
deev1[i,j]:=ga1[i+j-2]: od: od:j:='j':for j from 1 to p+1 do
deev1[p+1,j]:=t^(j-1):od:ddeev:=det(deev):
momev:=solve(ddeev=0,t):j:='j':
ddeev1:=det(deev1):
50
for j from 1 to p-1 do T[2*j]:=momev[j]:od:
momod:=solve(ddeev1=0,t):j:='j':
for j from 1 to p do T[2*j-1]:=momod[j]:od:T[n]:=q:
else i:='i':j:='j':
p:=(n+1)/2: deod:=matrix (p,p): deod1:=matrix(p,p):
for i from 1 to p-1 do
for j from 1 to p do
deod[i,j]:=ga[i+j-1]:deod1[i,j]:=ga1[i+j-1]: od: od:
j:='j':
for j from 1 to p do
deod[p,j]:=t^(j-1):deod1[p,j]:=t^(j-1):od;
ddeod:=det(deod): ddeod1:=det(deod1):
momev:=solve(ddeod1=0,t):j:='j':
momod:=solve(ddeod=0,t):
for j from 1 to p-1 do T[2*j]:=momev[j]:
T[2*j-1]:=momod[j]:od:T[n]:=q:fi:
> j:='j':for j from 1 to n do
print(T[j]);od;
3.4978524040526791548903910906093800157937370944307
9.6433262892869758318569778222425649953507398544371
17.842057810178443558106585746905338356779642208202
27.572855045211219806120971165699882227060045179022
38.255741610725552746023014189872241069171299356342
49.263988608386739985477896231779252188125954804435
59.955062478552248896712365460983689150235288218579
69.706183730641667286479975661184890605632220224347
77.949835517452042953659627182893884321777022566149
51
84.206449208111287032144352596348896692732025982071
88.112135774580898580171176401221763277352085265579
89.439765427807951894965973190461618963207216597933
> vx:=array(1..n,[]);
vx := array ( 1 .. 12, [ ] )
> llambda:=vector(n,[-1,-2,-3,-4,-5,-6,-7,-8,-9,-10,-11,-12]);
llambda := [ -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11, -12 ]
> A:=matrix(n,n):
B:=array(1..n,[]):
hp:=0.01:sch:=0:
for tp from hp by hp to 1 do
i:='i':
for i to n do
lambda[i]:=llambda[i]*tp; od:
i:='i':k:='k':j:='j':
vx[1]:=x[1]:
for i from 1 to n do
vx[i]:=x[1]+sum((product((lambda[i]-lambda[j]),j=1..k-1))*x[k],k=2..i):
od;
epsilon:=0.001: s:=epsilon+1:
while s>epsilon do
i:='i': j:='j':
for i from 1 to n do
for j from 1 to n-1 do
A[i,j]:=((-1)^j)*exp(-lambda[i]*T[j]):
od:
A[i,n]:=(-1)^n*(exp(-lambda[i]*T[n]))/2: od:
i:='i': j:='j': k:='k':
52
for i from 1 to n do
B[i]:=(sum((-1)^j*exp(-lambda[i]*T[j]),j=1..n-1)+((-1)^n)*exp(lambda[i]*T[n])/2-((-1)^n*u1*lambda[i]*vx[i]-1)/2)/lambda[i] od:
delta:=linsolve(A,B):sch:=sch+1:
i:='i':
for i from 1 to n do
T[i]:=T[i]+delta[i]:
od:
i:='i':
s:=sqrt(sum(delta[i]^2,i=1..n)):
od:
od:
> for i from 1 to n do print(T[i]) od:
1.5036000456819351765763692865259447493314180870823
2.3649330728285294835769372399515622436381120885488
2.9360915212915072877431970034423782207429397724424
3.3524571982680065733190861168330711416382288577428
3.6700978023523961719980920703047415757358686282039
3.9172890109578170090250996029551131086277068551526
4.1101370753579473350379624264563017417161623723940
4.2585332383053257916826948094841306067577202345698
4.3688129003176746429413189643557719811242640358785
4.4450773996257224835030077352863742550081421353485
4.4898958228496511391145936555289713258512576764047
4.5046843543073583621476773801245095387732911836213
> print(sch);
53
459
> print(delta);
[ -0.73460875323548220010507153052975541706559116205599 10 -5,
-0.000018734021135705953697914798243777336900189239830472 ,
-0.000034666748109523102512608411002243323325799814266753 ,
-0.000054391027296460379511050076461780726603005877957749 ,
-0.000076517154995278938113660688242337194477753194907569 ,
-0.000099460930009547132535080362312266440541920851072921 ,
-0.00012167953641759941328666756115740304154486977167732 ,
-0.00014179382140988373060770491308880728214121294530883 ,
-0.00015864780983792957966188464251482288943404849569147 ,
-0.00017133467525501620910467310893051575170653452137735 ,
-0.00017920585545362360459973304329864954964473811453779 ,
-0.00018187271135914498879270522952625158759207968779233 ]
> s;
0.00041825944709194630277501761038753898109755788860809
Приложение 2
От точки.
> restart;n:=12;
n := 12
> Digits:=50:
> with(linalg):
Warning, the protected names norm and trace have been redefined and unprotected
> opred:=proc(ga,dd);
if frac(n/2)=0 then
p:=n/2: de:=matrix(p,p);
for i from 1 to p do
54
for j from 1 to p do
de[i,j]:=ga[i+j]; od; od;
else
p:=(n+1)/2: de:=matrix (p,p):
for i from 1 to p do
for j from 1 to p do
de[i,j]:=ga[i+j-1]; od; od; fi;
dd:=det(de);
### WARNING: `p` is implicitly declared local
### WARNING: `de` is implicitly declared local
### WARNING: `i` is implicitly declared local
### WARNING: `j` is implicitly declared local
### WARNING: `p` is implicitly declared local
### WARNING: `de` is implicitly declared local
### WARNING: `i` is implicitly declared local
### WARNING: `j` is implicitly declared local
### WARNING: `p` is implicitly declared local
### WARNING: `de` is implicitly declared local
### WARNING: `i` is implicitly declared local
### WARNING: `j` is implicitly declared local
### WARNING: `p` is implicitly declared local
### WARNING: `de` is implicitly declared local
### WARNING: `i` is implicitly declared local
### WARNING: `j` is implicitly declared local
end:
Warning, `p` is implicitly declared local to procedure `opred`
Warning, `de` is implicitly declared local to procedure `opred`
55
Warning, `i` is implicitly declared local to procedure `opred`
Warning, `j` is implicitly declared local to procedure `opred`
Error, (in minor) object too large
> i:='i':k:='k':l:='l':
> x:=vector(n,[1,1,1,1,1,1,1,1,1,1,1,1]);
x := [ 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1 ]
> for l from 1 to 2 do u1:=2*l-3;
for k from 1 to n do
g[k]:=(q^k+(-1)^(k+1)*u1*k!*x[k])/2; od;
i:='i':for k from 1 to n do
ga[k]:=(g[k]-sum(ga[i]*g[k-i],i=1..k-1))/k; od;
opred(ga,dde);
s1:=evalf(fsolve(dde=0,q));
q[l]:=max(s1);dde:='dde';od:
> ga[0]:=-1:
> if q[1]>q[2] then q:=q[1];u1:=-1; else q:=q[2];u1:=1;fi;
q := 89.439765427807951894965973190461618963207216597933
u1 := 1
> T:=array(1..n,[]):
> i:='i':k:='k':j:='j':
for k from 1 to n do
g[k]:=(q^k+(-1)^(k+1)*u1*k!*x[k])/2;g1[k]:=-g[k]: od:
i:='i':k:='k':for k from 1 to n do
ga[k]:=(g[k]-sum(ga[i]*g[k-i],i=1..k-1))/k: ga1[k]:=(g1[k]sum(ga1[j]*g1[k-j],j=1..k-1))/k: od:
> k:='k':j:='j':l:='l':i:='i':
56
> if frac(n/2)=0 then
p:=n/2: deev:=matrix(p,p):deev1:=matrix(p+1,p+1):
for i from 1 to p-1 do
for j from 1 to p do
deev[i,j]:=ga[i+j]: od: od:j:='j':for j from 1 to p do
deev[p,j]:=t^(j-1): od;j:='j':i:='i':ga1[0]:=-1:
for i from 1 to p do
for j from 1 to p+1 do
deev1[i,j]:=ga1[i+j-2]: od: od:j:='j':for j from 1 to p+1 do
deev1[p+1,j]:=t^(j-1):od:ddeev:=det(deev):
momev:=solve(ddeev=0,t):j:='j':
ddeev1:=det(deev1):
for j from 1 to p-1 do T[2*j]:=momev[j]:od:
momod:=solve(ddeev1=0,t):j:='j':
for j from 1 to p do T[2*j-1]:=momod[j]:od:T[n]:=q:
else i:='i':j:='j':
p:=(n+1)/2: deod:=matrix (p,p): deod1:=matrix(p,p):
for i from 1 to p-1 do
for j from 1 to p do
deod[i,j]:=ga[i+j-1]:deod1[i,j]:=ga1[i+j-1]: od: od:
j:='j':
for j from 1 to p do
deod[p,j]:=t^(j-1):deod1[p,j]:=t^(j-1):od;
ddeod:=det(deod): ddeod1:=det(deod1):
momev:=solve(ddeod1=0,t):j:='j':
momod:=solve(ddeod=0,t):
for j from 1 to p-1 do T[2*j]:=momev[j]:
T[2*j-1]:=momod[j]:od:T[n]:=q:fi:
> j:='j':for j from 1 to n do
print(T[j]);od;
57
3.4978524040526791548903910906093800157937370944307
9.6433262892869758318569778222425649953507398544371
17.842057810178443558106585746905338356779642208202
27.572855045211219806120971165699882227060045179022
38.255741610725552746023014189872241069171299356342
49.263988608386739985477896231779252188125954804435
59.955062478552248896712365460983689150235288218579
69.706183730641667286479975661184890605632220224347
77.949835517452042953659627182893884321777022566149
84.206449208111287032144352596348896692732025982071
88.112135774580898580171176401221763277352085265579
89.439765427807951894965973190461618963207216597933
> vx:=array(1..n,[]);
vx := array ( 1 .. 12, [ ] )
> llambda:=vector(n,[-1,-2,-3,-4,-5,-6,-7,-8,-9,-10,-11,-12]);
llambda := [ -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11, -12 ]
> i:='i':
LL:=seq(k*sum(i*llambda[i],i=1..n)/sum(i^2,i=1..n),k=1..n);
> T2:=seq(-ln(1-LL[1]*T[i])/LL[1],i=1..n);
LL := -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11, -12
58
T2 := 1.5036000393154793975163537765190083635355080732044 ,
2.3649330562312691683972065552878020252856661657450 ,
2.9360914887768718517703891551393677550062500208089 ,
3.3524571428288257326936470296524019835734902879670 ,
3.6700977166059018753342173588613879424414105797639 ,
3.9172888884649911351050314806584438500945294102119 ,
4.1101369120112893444121243611358356275193849239226 ,
4.2585330334432540346701552870469955184129100645837 ,
4.3688126573233192821740002658741741804497097053050 ,
4.4450771259014369795236986065779883088955349481382 ,
4.4898955291814273741728610140834786273958987551432,
4.5046840537289171397493806470076204566652417035356
> i:='i':for i from 1 to n do T[i]:=T2[i] od;
T1 := 1.5036000393154793975163537765190083635355080732044
T2 := 2.3649330562312691683972065552878020252856661657450
T3 := 2.9360914887768718517703891551393677550062500208089
T4 := 3.3524571428288257326936470296524019835734902879670
T5 := 3.6700977166059018753342173588613879424414105797639
T6 := 3.9172888884649911351050314806584438500945294102119
T7 := 4.1101369120112893444121243611358356275193849239226
T8 := 4.2585330334432540346701552870469955184129100645837
T9 := 4.3688126573233192821740002658741741804497097053050
T10 := 4.4450771259014369795236986065779883088955349481382
T11 := 4.4898955291814273741728610140834786273958987551432
T12 := 4.5046840537289171397493806470076204566652417035356
> sch:=0:
> A:=matrix(n,n):
B:=array(1..n,[]):
hp:=0.01:
59
for tp from hp by hp to 1 do
i:='i':
for i to n do
lambda[i]:=LL[i]+(llambda[i]-LL[i])*tp; od:
i:='i':k:='k':j:='j':
vx[1]:=x[1]:
for i from 1 to n do
vx[i]:=x[1]+sum((product((lambda[i]-lambda[j]),j=1..k-1))*x[k],k=2..i):
od;
epsilon:=0.001: s:=epsilon+1:
while s>epsilon do
i:='i': j:='j':
for i from 1 to n do
for j from 1 to n-1 do
A[i,j]:=((-1)^j)*exp(-lambda[i]*T[j]):
od:
A[i,n]:=(-1)^n*(exp(-lambda[i]*T[n]))/2: od:
i:='i': j:='j': k:='k':
for i from 1 to n do
B[i]:=(sum((-1)^j*exp(-lambda[i]*T[j]),j=1..n-1)+((-1)^n)*exp(lambda[i]*T[n])/2-((-1)^n*u1*lambda[i]*vx[i]-1)/2)/lambda[i] od:
delta:=linsolve(A,B):
i:='i':
sch:=sch+1:for i from 1 to n do
T[i]:=T[i]+delta[i]:
od:
i:='i':
s:=sqrt(sum(delta[i]^2,i=1..n)):
od:
od:
> for i from 1 to n do print(T[i]) od:
60
1.5036000393154793975163537765190083635355081543477
2.3649330562312691683972065552878020252856662945679
2.9360914887768718517703891551393677550062209650860
3.3524571428288257326936470296524019835735072868580
3.6700977166059018753342173588613879424453806137337
3.9172888884649911351050314806584438500941990005900
4.1101369120112893444121243611358356274679885834365
4.2585330334432540346701552870469955184140912128698
4.3688126573233192821740002658741741806134549948123
4.4450771259014369795236986065779883088946210114310
4.4898955291814273741728610140834786272773394617289
4.5046840537289171397493806470076204566652413498476
> print(sch);
100
> print(delta);
61
[ 0.14600551297904724448350427075750638754673706873154 10 -42,
0.29874888555183674749422818240872775017193824214124 10 -42,
0.42686907926715573569996835016089762682648322394292 10 -42,
0.50753552234793217982280761670368728423680468879314 10 -42,
0.53906705853806575925567395845845232992394590583695 10 -42,
0.53512944251311424520200574074171145303533413591439 10 -42,
0.51275944856080027689903634230582612113626638752936 10 -42,
0.48499607165188875885973221972860898049041223759733 10 -42,
0.45951007090081944068226284590093055493337827830029 10 -42,
0.44001448408655329987263457699894451420974460107843 10 -42,
0.42800562334366472811435797894834604174361731853843 10 -42,
0.42396930212491582280768074553337302512612060275250 10 -42 ]
> s;
0.15469904050745934172612568253047599404505365752179 10-41
62
Выпускная квалификационная работа выполнена мной совершенно
самостоятельно. Все использованные в работе материалы и концепции из
опубликованной научной литературы и других источников имеют ссылки на
них.
«___» ________________ _____ г.
__________________________
(подпись)
____________________
(Ф.И.О.)
63
Отзывы:
Авторизуйтесь, чтобы оставить отзыв