Задача про мінімізацію витрат пального літаком при наборі висоти і швидкості.
Постановка задачі. Нехай літак, що знаходиться на висоті H0 і має швидкість V0 повинний піднятися на висоту Нk і набрати швидкість Vk. Відома витрата пального при підйомі літака з будь-якої висоти Н1 на будь-яку висоту Н2 > Н1 при постійній швидкості, а також витрата пального при збільшенні швидкості від будь-якої V1 до V2 (V2 >V1) при незмінній висоті. Знайти оптимальне керування набором висоти і швидкості, при якому витрати пального мінімальні.
Рішення. Т. я. стан системи S (літака) визначається двома параметрами: швидкістю V і висотою Н, причому V0<V<Vk, H0<H<Hk, то рішення (траєкторію польоту) будемо шукати на площині V0H, а точне на прямокутнику,
що і є областю припустимих рішень. Для рішення задачі методом Д.П. розіб'ємо відрізок [H0; Hk] на n1 відрізків довжини ![]() ![]() | ![]() |
Умовимося вважати, що за один крок (етап) літак може або збільшити висоту на Н , або швидкість на
V. Очевидно, існує множина траєкторій польоту літака, ламаних ліній, по яких точка S може переміщатися з S0 у Sk. Потрібно знайти таку траєкторію, що дозволяє мінімізувати W, витрату пального. Можна перебрати всі можливі траєкторії польоту і вибрати найкращу, але якщо n1 і n2 великі, то це трудомістке навіть із застосуванням ЕОМ.
Простіше вирішується задача методом Д.П. Розглянемо рішення задачі, умови якої наведені на мал. 2. Числа на вертикальних лініях означають витрату пального при наборі висоти з постійною швидкістю на даному етапі, а числа на горизонтальних лініях - витрату пального при збільшенні швидкості без зміни висоти. | ![]() |
Точки перетинання вертикальних і горизонтальних прямих назвемо вузлами, котрі ми будемо позначати кружечками. Весь процес розіб'ємо на етапи в залежності від числа кроків до пункту Sk. Очевидно, що до одного етапу будуть належати вузли, що лежать на рівнобіжних відрізках, зображених, на мал. 2. Число етапів k = n1 + n2 = 3 + 5 = 8. Так як умовну оптимізацію почнемо з кінця, тобто від стану Sk, то до першого кроку, належать вузли А1, В1. У кружечках будемо записувати умовно оптимальні значення витрати пального, а строчками на кожному кроці будемо позначати умовно оптимальні траєкторії, і т.д. Після 8-го кроку ми приходимо в точку S0. Рухаючись з урахуванням умовно оптимальних траєкторій, позначених стрілками з точки S0 у точку Sk ми одержимо оптимальну траєкторію для всього процесу, якій відповідає мінімальна витрата пального = 67 од. Як випливає з мал. 2 оптимальне керування не єдине.
У розглянутій задачі значно спрощений процес, тому що не враховується можливість одночасного набору висоти і збільшення швидкості.
Розглянемо модель, що враховує цей факт. Очевидно, що це буде прямування по діагоналі в напрямку до Sk. Тепер кожна вузлова точка, за винятком точок, що лежать на прямих Н=Нk і V=Vk, пов'язана з трьома іншими. Старий засіб нумерації числа кроків не проходить, тому що він не враховує додатковий зв'язок по діагоналі. Нумерацію вузлових точок по кроках | ![]() |
зручніше усього провести по ознаці їхніх координат, наприклад, по величині залишку швидкості, яку повинний набрати літак за кроки, що залишилися. При такій нумерації останнім кроком є той, що переводить точку S із вертикальної прямої k-1 на вертикальну пряму k, передостаннім - той, що переводить т. S з прямої k-2 на k-1 і т.д.
Побудуємо оптимальні рішення процесів. Умовно оптимальні рішення, як і раніше, будемо зображувати стрілками, а мінімальну витрату пального записувати в кружках.
Рухаючись від S0 до Sk по умовно оптимальних рішеннях, ми одержуємо оптимальне рішення, причому таких рішень два, обидва вони забезпечують мінімальних витрату пального, рівну 58 од.