Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Лабораторный практикум по курсу «Методы оптимал...doc
Скачиваний:
0
Добавлен:
01.07.2025
Размер:
1.26 Mб
Скачать

3. Алгоритм решения краевой задачи первого типа.

1. Задаем исходные данные: t0 ,t1 , шаг интегрирования, шаг вывода результатов, .

2. Задаем произвольное значение .

3. Интегрируем численным методом Рунге-Кутта дифференциальные уравнения (5.10), (5.11) до момента времени t1 .

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

5. Пересчитываем в соответствии с формулой .

6. Повторно интегрируем дифференциальные уравнения (5.10), (5.11) с полученным в п.5 значением .В результате получаем в конечный момент времени t1 требуемое значение .

4. Текст программы.

Смотри приложение №5.

5. Краевая задача второго типа.

Пусть уравнение движения имеет вид

(5.13)

Вводя новую переменную у2

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

(5.14)

Тогда перейдем от задачи Лагранжа к задаче Майера

.

В этом случае

,

( переменную y рассматриваем как у1 )

Тогда и удовлетворяют системе управлений с граничными условиями

; (5.15)

.

Оптимальное управление находится из условия максимума функции H по u. Из условия

находим

Так как , то , а - находится из краевой задачи.

При этом

, значит, найденное управление доставляет максимум функции H и дает решение поставленной задачи.

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

6. Алгоритм решения краевой задачи второго типа.

1. Задаем исходные данные: t1 , шаг интегрирования, шаг вывода результатов, .

2. Задаем произвольное значение .

3. Подбираем значение , которое даст расчетное значение , близкое к требуемому с точностью ,(например =0.1). Для этого интегрируем численным методом Рунге-Кутта дифференциальные уравнения (5.13), (5.14), (5.15) до момента времени t1.

4. В результате интегрирования получаем и вычисляем │ - │. Если разница меньше , то переходим на п.5, в обратном случае проверяем, превысило или нет расчетное значение требуемое . Если > , то за новое принимаем , увеличенное в 1,1 раза. Иначе - в качестве берем значение, уменьшенное в 1, 25 раза. Затем повторяем изложенные выше действия.

5. Подбираем значение , которое даст расчетное значение , близкое к требуемому с точностью ,(например =0.0001) . Для этого применим метод половинного деления (дихотомии). В соответствии с ним пересчитываем по формуле , где в качестве и принимаем последние значения , в соответствии с которыми были получены больше требуемого ( ) и меньше ( ). После повторно интегрируем дифференциальные уравнения (5.13)- (5.15). В результате интегрирования получаем и вычисляем │ - │. Если разница меньше , то поставленная краевая задача решена, прекращаем вычисления, иначе повторяем изложенные выше действия.

7. Текст программы.

Смотри приложение №5.