Текст
                    Р. БЕЛЛМАН, С. ДРЕЙФУС
ПРИКЛАДНЫЕ ЗАДАЧИ
ДИНАМИЧЕСКОГО
ПРОГРАММИРОВАНИЯ
Перевод с английского
Н. М. МИТРОФАНОВФЙ, А. А. ПЕРВ03ВАНСК0Г0,
А. П. ХУСУ, О. В. ШАЛАЕВСКОГО
ПОД РЕДАКЦИЕЙ
А. А. ПЕРВ03ВАНСК0Г0
ИЗДАТЕЛЬСТВО «НАУКА»
ГЛАВНАЯ РЕДАКЦИЯ
ФИЗИКО-МАТЕМАТИЧЕСКОЙ ЛИТЕРАТУРЫ
МОСКВА 1965


6 П 2. 15 Б43 УДК 62-50 APPLIED DYNAMIC PROGRAMMING by RICHARD E. BELLMAN and STUART E. DREYFUS 1962 PRINCETON UNIVERSITY PRESS PRINCETON, NEW JERSEY
ОГЛАВЛЕНИЕ Предисловие редактора перевода 12 Предисловие автора 17 Глава I. Одномерные процессы распределения 23 1 Введение 23 2 Описание процесса распределения ресурсов . . . . 24 3 Построение математической модели 25 4 Обсуждение 26 5 Аппарат математическою анализа 27 6. Трудности 28 7 Заключение 33 8 Анализ чувствительности 34 9 Динамическое программирование 34 10. Функциональные уравнения 35 11 Принцип оптимальности 36 12. Прямой вывод основного функционального уравнения 37 13. Обсуждение 38 14. Вычислительная схема 38 15. Неединственность максимума 41 16. Эффективность динамического программирования по сравнению с прямым перебором 42 17. Какие трудности мы преодолели? 44 18. Блок-схема вычислительного плана для общего про- процесса распределения 46 19. Численные результаты 49 20. Один полезный прием 51 21. Устойчивость 52 22. Процесс загрузки судна 52 23. Математическая постановка задачи 53 24. Обсуждение 53 25. Рекуррентные соотношения 54 26. Обсуждение вычислительной процедуры 55 27. Надежность многокомпонентных схем 57 28. Надежность на основе дублирования компонент.... 59 29. Математическая модель 60 30. Параллельные операции 61 31. Заключение 62 Комментарии и библиография 63
4 ОГЛАВЛЕНИЕ Глава II. Многомерные процессы распределения 66 1. Введение 66 2. Процесс распределения при наличии дв\х типов ре- ресурсов ." 67 3. Рекуррентные соотношения 68 4. Процесс распределения с двумя типами ограничений 68 5. Рекуррентные соотношения 69 6. Вычислительные аспекты 70 7. Обсуждение 70 8. Задача о запасных частях 71 9. Стохастические аспекты 71 10. Подход с точки зрения динамического программиро- программирования 71 11. Вычислительная процедура 73 12. Пример 74 13. Множитель Лагранжа 76 14. Геометрическое происхождение 78 15. Множитель Лагранжа в качестве цены 80 16. Применение множителя Лагранжа —I 80 17. Применение множителя Лагранжа —И 82 18. Понижение размерности 82 19. Эквивалентность вариационных задач 83 20. Монотонность по I ч. 85 21. Применение метода множителей Лагранжа—реклам- Лагранжа—рекламная кампания 86 22. Метод множителей Лагранжа 88 23. Результаты вычислений 89 24. Вычисление множителей Лагранжа 93 25. Задача с многими уровнями 96 26. Многомерное пространство политик 97 27. Проблема надежности : 98 28. Введение множителя Лагранжа 99 29. Численный пример 99 30. Блок-схема программы 101 31. Обобщение 101 32. Транспортная задача Хичкока-—Купманса 104 33. Математическая модель транспортного процесса ... 105 34. Обсуждение 106 35. Подход с точки зрения динамического программиро- программирования 107 36. Обсуждение 108 37. Понижение размерности 109 38. Увеличение шага сетки 109 39. Применение множителя Лагранжа к задаче с тремя складами 110 40. Пример I — два склада, десять пунктов потребления 112 41. Блок-схема программы для случая двух складов ... 114 42. Пример II —три склада, десять п>нктов потребления 114 43. Последовательные приближения — I 116 44. Приближение в пространстве политик 117 45. Последовательные приближения — И 119
ОГЛАВЛЕНИЕ 5 46. Последовательные приближения — III 121 47. Коэффициенты связи • 124 48. Грубая сетка 125 49. Последовательные приближения в задаче Хичкока— Купманса 126 50. Сходимость 127 51. Пример I — относительный минимум 127 52. Пример II — абсолютный минимум 129 53. Стохастическая итерация 133 54. Выводы 134 55. Задачи о «трудной переправе» 134 56. Общая задача 135 57. Функциональные уравнения 135 58. Обсуждение 136 59. Численное решение 137 Комментарии и библиография 138 Глава III. Одномерные процессы сглаживания и состав- составления расписаний 143 1. Введение 143 2. Процессы сглаживания 144 3. Пример процесса сглаживания 144 4. Математическая постановка задачи 145 5. Функциональные уравнения 146 6. Обсуждение 146 7. Вычислительные аспекты 146 8. Результаты 148 9. Блок-схема 149 10. Несколько графических результатов 149 11. Задачи о ближайшем соседе 149 12. Замена оборудования > . • 156 13. Физический процесс 157 14. Постановка задачи в терминах динамического про- программирования 157 15. Аналитическое решение 158 16. Технологические усовершенствования 158 17. Формулировка задачи в терминах динамического про- программирования 160 18. Пример 161 19. Другие постановки задачи 166 20. Задача складирования 169 21. Математическая модель 169 22. Рекуррентные соотношения 170 23. Обсуждение 171 24. Предварительные преобразования 171 25. Аналитическая структура 173 26. Доказательство теоремы 173 27. Обс>ждение 175 28. Численный пример 175 29. Выводы 177 30. Задача о поставщике 177
О. ОГЛАВЛЕНИЕ 31. Подход с точки зрения динамического программиро- программирования — 1 178 32. Подход с точки зрения динамического программиро- программирования — II 178 33. Аналитическое решение для ^=1, /7 = 2 180 34. Аналитическое решение для q = k,p = k-{-\ 181 35. Аналитическое решение для q = \, p = S (I) 181 36. Аналитическое решение для <7=1, р = 3 (II) 183 37. Аналитическое решение 184 38. Решение, основанное на здравом смысле 184 39. Задача управления запасами 186 40. Обсуждение 188 41. Дальнейшие упрощения 189 42. Планирование производственной линии 190 43. Математическая постановка задачи 191 44. Подход с точки зрения динамического программиро- программирования 192 45. Определение оптимальной перестановки 193 46. Пример 194 47. Заключение 195 Комментарии и библиография 196 Глава IV. Методы оптимального поиска , 202 1. Введение 202 2. Унимодальные функции 203 3. Одномерный оптимальный процесс нахождения точки максимума 203 4. Числа Фибоначчи 205 5. Золотое сечение 206 6. Дискретный случай 206 7. Нули функций 207 8. Функциональные уравнения 208 9. Частный случай п=\ 212 10. Случай л=1, S = 0 213 11. Описание процесса вычислений 215 12. Численный пример — сравнение с вычислительным методом деления отрезка пополам 216 13. Обсуждение 218 14. Задача о фальшивой монете 219 15. Задача с двумя монетами 220 16. Аналитическая постановка задачи 221 17. Значения функции р (г; s; t) 223 18. Основное функциональное уравнение 223 19. Вычислительные процедуры **у ^^ 20. Рассмотрение с помощью теории информации. . . *~. 230 Комментарии и библиография ^ . 232 Гдава V. Динамическое программирование и вариацию*- ное исчисление •-• 234 1. Введение -..-.;. 234 2. Функционалы •. * • •*• 235
ОГЛАВЛЕНИЕ 7 3. Формальный аппарат вариационного исчисления . . . 236 4. Необходимые условия 240 5. Естественные граничные условия 240 6. Изопериметрические задачи 241 7. Недостатки вариационного исчисления 241 8. Двухточечные краевые задачи 244 9. Ограничения 245 10. Линейность 247 П. Формальный аппарат динамического программирова- программирования 247 12. Основное нелинейное уравнение в частных производ- производных *. 248 13. Уравнение Эйлера 249 14. Условие Лежандра 250 15. Условие Вейерштрасса 250 16. Случай нескольких зависимых переменных 251 17. Изопериметрическая задача 252 18. Множитель Лагранжа 253 19. Естественные граничные условия 254 20. Условие трансверсальности 254 21. Угловые условия Эрдманна 255 22. Неявные вариационные задачи 255 23. Ограничения в виде неравенств 257 24. Уравнение Гамильтона—Якоби 258 25. Дискретные приближения 260 26. Обсуждение 262 27. Двухточечные краевые задачи 262 28. Двойственность 264 29. Заключение 264 Комментарии и библиография 265 Глава VI. Оптимальные траектории 269 1. Введение 269 2. Упрощенная задача о выборе траектории 270 3. Двойственная задача 272 4. Задача о наборе высоты за минимальное время.... 272 5. Формулировка в терминах динамического программи- программирования 273 6. Аналитическое решение 274 7. Вычислительная процедура 275 8. Образец расчета 276 9. Обобщенная задача о наборе высоты 281 10. Задача о траектории спутника 282 11. Упрощенная задача 283 12. Математическая формулировка 283 13. Аналитическое решение 285 14. Решение с помощью динамического программирова- программирования—I 285 15. Решение с помощью динамического программирова- программирования - И 286 16. Вычислительные результаты 287
« ОГЛАВЛЕНИЕ 17. Численные результаты 289 18. Блок-схема 290 19. Новое понятие управления 292 20. Многоступенчатые ракеты 292 21. Задача об оптимальном разделении 293 22. Формулировка 293 23. Задачи более высокой размерности 294 24. Задача о путешествиях 295 25. Вычислительные аспекты 296 26. n-Pi по краткости путь 297 27. Заключение 298 Комментарии и библиография 298 Глава VII. Многошаговые производственные процессы, использующие промышленные комплексы 302 1. Введение 302 2. Двухотраслевой экономический комплекс 303 3. Математическая модель 304 4. Обсуждение 305 5. Использование динамического программирования . . . 306 6. Исследование вершин 307 7. Уменьшение размерности и диапазона изменения ве- величин 308 8. Техника вычислений • . 310 9. Стационарный рост 313 Комментарии и библиография 314 Глава V11I. Процессы регулирования с обратной связью 316 1. Введение 316 2. Классическая задача регулирования 317 3. Детерминированные задачи регулирования с обратной связью 318 4. Временное запаздывание 320 5. Формулировка вариационных задач 320 6. Аналитические аспекты : . 321 7. Дискретный вариант 321 8. Функциональные уравнения . . . 322 9. Задача о релейном управлении . .' 322 10. Выключение ядерного реактора 324 11. Максимальное отклонение 326 12. Максимальная дальность 327 13. Минимум максимального отклонения 328 14. Понижение размерности 329 15. Обсуждение 331 16. Стохастические процессы регулирования 332 17. В чем состоит оптимальная политика? 333 18. Функциональные уравнения 335 19. Вычислительные аспекты 336 20. Корреляция 336 21. Пример (по Аоки) 337 22. Игры против природы 338
ОГЛАВЛЕНИЕ У 23. Процессы с адаптацией 338 24. Адаптивное регулирование с обратной связью .... 340 25. Вычислительные аспекты 340 26. Теория связи и информации 342 27. Полезность как функция использования 343 28. Формулировка в терминах динамического программи- программирования 343 29. Процесс с адаптацией 344 30. Формулировка в терминах динамического программи- программирования 345 31. Степенной закон 345 32. Логарифмический закон 346 33. Дальнейшие упрощения и численные результаты . . . 346 Комментарии и библиография 349 Глава IX. Численные результаты для процессов регули- регулирования с обратной связью 354 1. Введение 354 2. Дискретный стохастический процесс 354 3. Рекуррентные соотношения 355 4. Выбор параметров 356 5. Обсуждение результатов 357 6. Задача о конечных значениях 358 7. Стохастический вариант 362 8. Процесс с адаптацией 362 Комментарии и библиография 364 Глава X. Линейные уравнения и квадратичные критерии 365 1. Введение 365 2. Зацача сглаживания 366 3. Обсуждение 367 4. Более сложная зацача сглаживания 368 5. Слабо связанные системы 369 6. Характеристические числа 370' 7. Стохастическое сглаживание 372 8. Линейные процессы управления с квадратичными критериями—детерминированный случай 372 9. Стохастический случай 373 10. Понижение размерности 374 11. Линейная теория предсказания 375 12. Детерминированный случай 376 13. Стохастический случай 377 . 14. Корреляция . . . 377 15. Теория предсказания с адаптацией 378 Комментарии и библиография 379 Глава XI. Марковские процессы решения 381 1. Введение 381 2. Марковские процессы 382 3. Марковский процесс решения 383
10 ОГЛАВЛЕНИЕ 4. Пример — задача о такси 384 5. Аналитическая формулировка 386 6. Вычислительные аспекты 386 7. Асимптотическое поведение 387 8. Обсуждение 388 9. Метод Ховарда итерации в пространстве политик. . . 389 10. Операция определения переходных значений 390 11. Процедура улучшения политики 390 12. Решение задачи о такси 391 13. Более общая задача : 396 14. Общее решение 397 15. Задачи о замене оборудования в пересмотренной по- постановке 398 16. Задача о производстве шин 398 17. Формулировка в терминах динамического программи- программирования •. . 399 18. Числовой пример 400 19. Другой пример 401 20. Задача о замене автомашины 402 21. Метод имитирования 410 22. Связь с линейным программированием 410 23. Резюме 410 Комментарии и библиография 411 Глава XII. Численный анализ 413 1. Введение 413 2. Трудности, связанные с размерностью 413 3. Полиномиальная аппроксимация 414 4. Ортогональные полиномы 415 5. Гауссовы квадратуры 416 6. Численный пример 417 7. Использование математического анализа 419 8. Устойчивость - 420 9. Задача о брахистохроне 420 10. Математическая формулировка 421 11. Вариационное решение 421 12. Постановка задачи в терминах динамического про- программирования 422 13. Вычислительная процедура 423 14. Численные результаты 424 15. Одна задача с ограничениями 425 16. Аналитическое решение 425 17. Постановка в терминах динамического программиро- программирования 426 18. Вычислительная процедура 427 19. Численные результаты 428 20. Аппроксимация кусочно-линейными функциями .... 428 21. Основное рекуррентное соотношение 429 22. Обобщения 429 Комментарии и библиография 430
ОГЛАВЛЕНИЕ 11 Приложение I. Трансцендентная кривая. О. Гросс* . . . 431 1. Число точек перегиба 431 2. Необходимое и достаточное условие выпуклости . . . 433 Приложение II. Новый подход к теории двойственно- двойственности математического программирования С. Дрей- Дрейфус и М. Фреймер 435 1. Введение 435 2. Двойственная задача линейного программирования. . 435 3. Уравнения Куна—Таккера: квадратичный случай . . . 441 4. Уравнения Куна—Таккера: общий случай г . 443 Библиография 444 Приложение III. Вычислительный метод, основанный на последовательных приближениях в пространстве политик. С. Дрейфус 445 1. Введение 445 2. Задача 446 3. Рекуррентные уравнения 447 • 4. Способы улучшения 449 Библиография 452 Приложение IV. О новом функциональном преобразо- преобразовании в анализе: преобразование максимума. Р. Белл- мая и В. Каруш 453 1. Введение 453 2. Преобразование максимума 454 3. Обратный оператор 455 4. Применение 456 Библиография 457 Приложение V. Счетная машина RAND-Джонниак. С. Дрейфус 458
ПРЕДИСЛОВИЕ РЕДАКТОРА ПЕРЕВОДА Еще два десятилетия тому назад технические и тем более экономические науки носили описательный характер. Проекти- Проектирование машин, планирование производства велось путем рассмотрения немногих отдельных вариантов, выбираемых из множества объективно возможных на основе технической или экономической интуиции, т. е. в конечном счете на основе прошлого опыта. Некоторые из этих вариантов оказывались практически удачными, другие отпадали. Подобная процедура «проб и ошибок» и в настоящее время широко распространена. Однако с развитием техники, усложнением структуры производства, усложнением и удоро- удорожанием самих проектируемых конструкций начало склады- складываться убеждение в необходимости замены процедуры «проб и ошибок» более эффективной методикой аналитического проектирования и планирования, основанного на выборе наи- наилучшего, оптимального варианта в процессе предварительного математического исследования. В настоящее время эта проблема оптимизации стала одной из основных проблем в технических и экономических науках. Необходимый для ее решения математический аппарат, каза- казалось бы, имелся в готовом виде — это классический анализ и вариационное исчисление. Однако непосредственное примене- применение известного аппарата столкнулось с значительными труд- трудностями. Реальные задачи оптимизации не укладывались не- непосредственно в классические схемы, что вызвало к жизни
ПРЕДИСЛОВИИ РЕДАКТОРА ПЕРЕВОДА . 13 появление за последние годы целого ряда новых математи- математических исследований. Среди них важное место занимают работы Р. Беллмана и его сотрудников, результатом которых явилось создание ме- метода динамического программирования. Предложенный Р. Беллманом аппарат функциональных уравнений значительно расширяет возможности решения реаль- реальных проблем оптимизации. Его главным достоинством является хорошая «приспособленность» к использованию современной вычислительной техники. Изложению метода динамического программирования и его приложений были посвящены уже известные советскому чи- читателю книги: Р. Беллман, Динамическое программирова- программирование, ИЛ, 1960; Р. Беллман, И. Гликсберг, О. Гросс, Некоторые вопросы математической теории управления, ИЛ, 1962; Р. Беллман, Процессы регулирования с адаптацией, Изд-во «Наука», 1964. Данная книга, впервые появляющаяся в русском переводе, существенно отличается как по содержанию, так и по мето- методическим установкам от ранее вышедших. Ее основной целью (и основным достоинством) является демонстрация приемов, позволяющих довести решение прикладных задач до числен- численных результатов. Изложение проблем общего характера сопровождается подробным решением достаточно сложных примеров. При этом приводятся блок-схемы вычислительных планов, необходимые для постановки задач на цифровых вычислительных машинах, даются результаты вычислений, а также оценки требуемого машинного времени и объема памяти. В теоретическом отношении наибольший интерес представ- представляют два момента. Если в предыдущих работах Р. Беллмана динамическое программирование выступало совершенно отор- оторванным от других методов оптимизации, то здесь изложение сопровождается сопоставлением с результатами современного
14 ПРЕДИСЛОВИЕ РЕДАКТОРА ПЕРЕВОДА вариационного исчисления, основанного на использовании не только уравнений Эйлера, но и более сильных и тонких условий (например, условия Вейерштрасса или близкого к нему принципа максимума Понтрягина). Значительное внимание уделяется связи линейного и динамического программирования. Другим важным моментом является подробная разработка в данной книге идеи последовательного приближения в про- пространстве политик (управлений), позволяющей в значительной мере преодолеть главные практические трудности в примене- применении динамического программирования. Вместе с тем надо отметить несколько апологетический характер изложения, в ходе которого авторы постоянно настаивают на решительном превосходстве метода динамиче- динамического программирования над всеми другими методами оптими- оптимизации. Читателям, практически работавшим в этой области, конечно известно, насколько эффективным в ряде реальных задач является применение и иных идей, например принципа максимума. К другим недостаткам книги относятся некоторая небреж- небрежность формулировок и нередко встречающиеся неточности в изложении, которые, по-видимому, лишь частично удалось исправить при переводе. Однако можно быть уверенным, что, несмотря на указан- указанные недостатки, данная книга будет весьма интересной, а глав- главное, полезной для широкого круга читателей. Перевод книги выполнили: О. В. Шалаевский (гл. I), А. П. Хусу (гл. II, X—XII и приложения), Н. М. Митрофа- Митрофанова (гл. III—V) и А. А. Первозванский (гл. VI—IX). К боль- большинству глав редактором были сделаны дополнительные библиографические указания. Л. Первозванский
Памяти ДЖОНА ФОН НЕЙМАНА, вдохновителя и друга
ПРЕДИСЛОВИЕ АВТОРА В период после второй мировой войны стало ясно, что целый ряд интересных и важных видов деятельности можно трак- трактовать как многошаговые процессы решения. Вскоре было об- обнаружено, что возникающие при их исследовании математиче- математические вопросы выходят за обычные границы классического анализа и требуют для своего успешного разрешения новых методов. Классические методы анализа и вариационного ис- . числения иногда оказывались ценными и полезными и в этих новых областях, однако они были явно ограничены по диапа- диапазону и гибкости и определенно недостаточны, когда речь шла о получении численных ответов. Признание этих фактов при- привело к созданию целого ряда новых математических теорий и методов. Среди них была теория динамического программи- программирования, представляющая собой новый подход, основанный на использовании функциональных уравнений и принципа опти- оптимальности и учитывающий возможности, заложенные в раз- развитии вычислительной техники. Первой задачей, которую мы ставили себе при разработке теории, было исследование ряда видов деятельности в области техники, экономики, промышленности и в военном деле, с целью выявления круга задач, которые могут быть сфор- сформулированы в терминах динамического программирования, а также выяснения уровня их сложности. Это не всегда явля- являлось стандартной операцией, так как при описании процесса оптимизации имеется много способов выбора параметров состояния и критериев. Часто случается, что определенный тип математической модели хорошо приспособлен к опреде- определенному же типу аналитического подхода. Вообще три прин- принципиальные стороны математической модели — смысловая, аналитическая и вычислительная — должны рассматриваться в единстве, а не по отдельности. Следовательно, некоторая
18 ПРЕДИСЛОВИЕ АВТОРА доля усилий идет на перевод словесных задач, поставленных в таких неопределенных терминах, как эффективность, воз- возможность, стоимость и т. д., в точные аналитические задачи, требующие решения уравнений и определения экстремумов. Когда подобная переформулировка уже выполнена, важно изучить связь между решениями получаемых функциональных уравнений и оптимальными политиками первоначального про- процесса решения. Значит, прежде чем переходить к численному решению или структурному анализу, необходимо исследовать вопрос о существовании и единственности решения. К счастью, в ряде важных случаев доказательство существования и един- единственности осуществляется легко, так что можно с уверен- уверенностью приступать к изучению природы оптимальных политик и максимального дохода, используя основные функциональные уравнения. Сначала мы сосредоточим внимание на тех задачах, кото- которые по своему характеру формулируются как многошаговые процессы решения. Затем мы воспользуемся привилегией ма- математики изучать любой процесс, который можно рассматри- рассматривать как многошаговый процесс решения. Таким путем мы углубимся в изучение различных разделов вариационного исчис- исчисления, в частности, рассмотрим задачи о траекториях и про- процессы управления с обратной связью. После этого начального периода захвата территории и укрепления на ней мы чувст- чувствуем, что настало время выполнить некоторые численные исследования. Хотя с самого начала мы имели в виду именно эту цель и потому постоянно изучали осуществимость наших процедур с этой точки зрения, все же совершенно необхо- необходимо провести до конца детальное численное решение. Тот, кто хотя бы даже немного имел дело с вычислительными машинами, скоро начинает относиться с осторожностью к пред- предлагаемым решениям, как бы изящны они ни были. До тех пор, пока каждая отдельная стадия численного решения задачи тщательно не проверена и не апробирована практикой, нельзя быть уверенным, что имеющиеся ограничения по точности и устойчивости, объему памяти или затратам времени не окажутся препятствиями на пути осуществления полного решения. Кроме того, вскоре выясняется, что никакое решение кон- конкретной задачи не является стандартным. Воспользовавшись индивидуальными структурными особенностями, всегда можно сократить требуемое время, повысить точность, приблизить
ПРЕДИСЛОВИЕ АВТОРА 19 модель к реальности без какой-либо дополнительной потери времени и т. д. Теория динамического программирования хо- хорошо приспособлена для учета индивидуальных особенностей конкретных процессов. В 1955 году мы начали систематическое исследование вы- вычислительной реализуемости динамического программирования. Мы собрали целый ряд задач оптимизации из самых разно- разнообразных областей и различными путями опробовали наши методы. Цель настоящей книги — показать, что динамическое про- программирование действительно может быть использовано для решения ряда неприятных вариационных задач и задач опти- оптимизации, интересных и важных для приложений. Некоторые из них лишь с трудом можно было трактовать с помощью других методов, некоторые рассматривались только на основе метода «проб и ошибок» и «научного гадания», а некоторые каза- казались совершенно ускользающими от других методов. Польза от наличия достаточно стандартизованного аппа- аппарата для некоторых больших классов задач из области чистой и прикладной математики велика. Во-первых, мы имеем си- систематическое средство получения точных числовых отве- ответов на конкретные числовые вопросы в задачах руководства и контроля, составления расписаний и управления запасами. Во-вторых, мы имеем средство получения точных ответов, которые можно использовать в качестве эталона для прибли- приближенных результатов, полученных другими, возможно, более простыми и быстрыми путями. Таким образом, мы можем проверять действенность приближенных методов. При столкновении с новыми классами математических задач, которые не поддаются решению с помощью сущест- существующих аналитических средств, крайне важно уметь исследо- исследовать классы численных решений в надежде распознать поведе- поведение решения. Они могут дать ценный ключ к выяснению анали- аналитической структуры решений и таким образом направить наши исследования в выгодном направлении. В конце концов, матема- математика зарождалась как экспериментальная наука. Если мы не хотим духовно оскудеть подобно иным кабинетным философам, мы должны время от времени, засучив рукава, приниматься за некоторую черную работу. С помощью динамического програм- программирования и вычислительных машин мы можем системати- систематически заниматься математическим экспериментированием.
20 ПРЕДИСЛОВИЕ АВТОРА Заметим, наконец, чго во многих случаях нас больше ин- интересует природа огпимальных политик, чем точные числовые значения, которые обращают в максимум или минимум целевую функцию. Точные оптимальные политики для простых про- процессов решения могут быть использованы для получения простых приближенных политик в более сложных процессах решения. Опишем теперь вкратце содержание различных глав. Основное функциональное уравнение динамического про- программирования имеет вид f(p) = max[H(p,q,f(T(p,q)))\. A) Предмет может быть подразделен несколькими способами: можно принять за основу точную форму уравнения A), или тип процесса, приводящего к A), или же свойство детерми- детерминированности, стохастичности или адаптивности и т. д. Для целей численного исследования целесообразно сначала обратить внимание на размерность вектора состояния р. \В главе I мы рассматриваем некоторые простые процессы, приводящие к последовательностям функций от одной переменной, с целью подвести читателя как к основным идеям динамического программирования, так и к стандартным вычислительным методам, которые будут неоднократно применяться в даль- дальнейшем. Обладая необходимыми .предварительными сведениями, мы рассматриваем в главе II некоторые интересные задачи, при- приводящие к последовательностям функций от двух переменных. После обсуждения трудностей, связанных с размерностью, которые начинают явственно вырисовываться на горизонте, мы показываем, как в ряде случаев их можно смягчить с помощью множителей Лагранжа. В главе III мы сосредоточиваем наши усилия на основном предмете книги и даем некоторые аналитические и численные решения для различных классов процессов сглаживания и со- составления расписаний. Глава IV посвящена исследованию задач динамического программирования, которые возникают в ходе численного решения самих задач динамического программирования. Урав- Уравнение A) требует определения максимума по q. Поскольку по ряду причин, указанных далее в тексте, нежелательно
ПРЕДИСЛОВИЕ АВТОРА 21 использование методов классического анализа, мы должны будем прибегнуть к процессу поиска для определения максимизи- максимизирующего значения q. В некоторых случаях можно выдержать процесс прямого перебора; в других же случаях существенно использовать секвенциальный *) метод. Глава является введе- введением в эту очень трудную и увлекательную область. До сих пор речь шла о дискретных во времени процессах. В главе V показано, как теория динамического программиро- программирования может быть использована для получения очень простой трактовки вариационных задач, содержащих функции от одной независимой переменной. Принцип оптимальности приводит к нелинейному уравнению в частных производных, из кото- которого быстро получаются все классические результаты. В главе VI мы переходим к одному из наиболее интерес- интересных современных приложений динамического программирова- программирования — определению оптимальных траекторий. Рассматриваются конкретные задачи и даются их численные решения. Следующая глава VII является кратким экскурсом в область математической экономики. Используя модель затрат-выпуска, ставшую знаменитой благодаря работе Леонтьева, мы рассмат- рассматриваем оптимальную эксплуатацию комплекса взаимосвязанных отраслей производства. В главах VIII и IX рассматриваются различные аспекты быстро развивающейся теории процессов управления. Первая из этих глав посвящена рассмотрению различных типов де- детерминированных стохастических и адаптивных процессов; вто- вторая следует работе Масанао Аоки и посвящена некоторым вычислительным результатам. Глава X представляет собой краткое введение в очень интересное и благодарное исследование процессов оптимиза- оптимизации, связанных с линейными уравнениями и квадратичными критериями. Эти результаты важны не только сами по себе, но также и благодаря возможности их использования при решении более сложных задач методом последовательных приближений. Далее мы рассматриваем несколько подробнее марковские процессы решения и даем ряд применений. Некоторые важные части этой главы основаны на работе Р. Говарда. *) То есть метод последовательного многошагового поиска, в котором на каждом шаге используется информация, полученная на предыдущих шагах. {Прим. ред.)
22 ПРЕДИСЛОВИИ АВТОРА Последняя глава посвящена некоторым предварительным результатам по точности и устойчивости метода динамиче- динамического программирования. Эта область исследования относи- относительно мало разработана и многие важные задачи остаются здесь неисследованными. В конце текста помещены четыре приложения, содержащие более подробные результаты, а также некоторые более поздние результаты, полученные О. Гроссом, М. Фреймером и В. Карушем в сотрудничестве с различными авторами. Пятое приложение содержит описание вычислительной ма- машины RAND-Джонниак, использованной нами при вычислениях. Насколько это было возможно, мы старались сделать книгу самостоятельной. Читатель, желающий познакомиться с более глубоким обоснованием динамического программиро- программирования, может посмотреть книгу Р. Беллмана «Динамическое программирование», М., ИЛ, 1960; детальное рассмотрение современной теории процессов управления можно найти в книге Р. Беллмана «Процессы регулирования с адапта- адаптацией» (изд-во «Наука», 1964). Многочисленные ссылки на применения и оригинальные научные статьи можно найти в конце глав. Желающим познакомиться с обширной биб- библиографией мы рекомендуем книгу: V. Riley and S. Gass, Linear Programming and Associated Techniques. Operations Research Office, Johns Hopkins Press, 1958. Ряд приведенных результатов получен в сотрудничестве с другими математиками или же основан на их индивидуаль- индивидуальных усилиях. За использование этих исследований мы приносим, в частности, благодарность М. Аоки, Т. Картано, М. Фреймеру, О. Гроссу, Р. Говарду, С. Джонсону, Р. Калаба и В. Нарушу. Помещенные в книге математические результаты были получены в процессе исследований, выполненных в корпо- корпорации RAND по широкой программе научных изысканий для военно-воздушных сил Соединенных Штатов. Нам хотелось бы выразить благодарность за возможности, предоставлен- предоставленные нам этой программой. Ричард Беллман, Стюарт Дрейфус Корпорация RAND Сайта Моника, июль 1961
ГЛАВА I ОДНОМЕРНЫЕ ПРОЦЕССЫ РАСПРЕДЕЛЕНИЯ 1. ВВЕДЕНИЕ Мы начинаем изложение с изучения простого класса про- процессов распределения, встречающихся в математической эко- экономике и исследовании операций. Основная задача состоит н эффективном использовании ресурсов различных типов. Для того чтобы облегчить читателю усвоение методов, ко- которые мы примем на вооружение, рассмотрим сначала не- несколько элементарных моделей, приводящих к минимальным математическим трудностям. Простота этих вводных задач позволит нам опробовать и проанализировать методы, которые будут использованы впоследствии для исследования более реальных и сложных схем. Как мы увидим, все важные для приложений процессы обладают целым рядом неприятных особенностей и, вообще говоря, требуют различных методов, применяемых в сочета- сочетании друг с другом, а также ловкости и изобретательности. Все наши усилия будут направлены на достижение главной цели — получения численных решений для конкретных задач. Первые вычисления, которые мы производим, относятся к определению максимума функции N переменных R 0*1, Хъ . .., XN) = gi (*!> + & (ЛГа) +. . . + ?лг(*Лг) A.1) в области значений, задаваемой соотношениями а) *! + ¦**+... + ¦** = ¦*, Ь) ^О *
24 ОДНОМЕРНЫЕ ПРОЦЕССЫ РАСПРЕДЕЛЕНИЯ [ГЛ. I Существует много трудностей, которые возникают при рас- рассмотрении этой, на первый взгляд, простой и ясной задачи. В ходе тщательного и обстоятельного обсуждения этих пре- препятствий мы обнаружим достаточные основания для введения нового подхода — метода функциональных уравнений дина- динамического программирования. Для введения в круг основных идей динамического про- программирования и детального выяснения вычислительных аспек- аспектов будет использован пример процесса распределения ресур- ресурсов, связанный с задачей оптимизации указанного вида. При этом повсюду мы будем уделять внимание основным сведе- сведениям, касающимся времени кодирования, рабочего времени, точности, устойчивости и вычислительных планов, представ- представляемых в виде блок-схем. Мы рассмотрим еще две задачи, приводящие к аналити- аналитическим вопросам аналогичного типа. Источником одной из них служит процесс загрузки судов, другая связана с надеж- надежностью многокомпонентных схем. 2. ОПИСАНИЕ ПРОЦЕССА РАСПРЕДЕЛЕНИЯ РЕСУРСОВ Прежде чем привести аналитическую формулировку, дадим чисто словесное описание класса процессов, которые мы намерены изучать. Допустим, что мы располагаем некоторым количеством экономических ресурсов. Под этим абстрактным термином могут скрываться люди, деньги, машины, расщеп- расщепляющийся материал для ядерных реакторов, вода для сель- сельскохозяйственных и промышленных целей или для производ- производства электроэнергии, топливо для космического корабля и т. д. Столкновение интересов объясняется тем, что ресурсы можно употребить многими различными способами. Каждый такой возможный способ мы называем технологическим процессом, или производственным способом. В результате употребления всех ресурсов или их части в каком-либо отдельном процессе мы получаем некоторый доход. В одних случаях доход может быть оценен в едини- единицах самих ресурсов (деньги могут снова приносить деньги, машины могут снова производить машины); в других — он может быть измерен в единицах совершенно отличной при- природы (топливо может давать скорость, деньги могут обес- обеспечивать надежность) и т. д. Размер дохода зависит как от
3] ПОСТРОЕНИЕ МАТЕМАТИЧЕСКОЙ МОДЕЛИ 25 употребленного количества ресурсов, так и от выбранного процесса. Сделаем следующие основные предположения. a) Доходы, полученные от различных процессов, могут быть измерены общей единицей. b) Доход, полученный от любого данного процесса, не зависит от того, какие количества ресурсов были выделены для других процессов. c) Общий доход может быть определен как сумма дохо- доходов, полученных от отдельных процессов. На экономическом языке это означает, что полезность, полученная от процесса распределения в целом, может быть вычислена простым сложением полезностей, полученных от отдельных процессов. Основная задача — разделить наши ресурсы так, чтобы максимизировать общий доход. Описанная простая матема- математическая модель процесса распределения ресурсов является полезной для описания многих ситуаций. 3. ПОСТРОЕНИЕ МАТЕМАТИЧЕСКОЙ МОДЕЛИ Дадим теперь точную математическую формулировку описанной задачи. Пусть N различных процессов занумеро- занумерованы в определенном порядке числами 1, 2, ..., N. Когда мы говорим, что рассматриваются два процесса, мы будем иметь в виду процессы 1 и 2; когда называется пять про- процессов, мы будем иметь в виду процессы 1, 2, 3, 4, 5, и т. д. Порядок нумерации процессов значения не имеет, но, будучи однажды принятым, он должен твердо сохраняться впредь. Каждому процессу соответствует функция полезности. Эта функция выражает зависимость дохода при этом про- процессе от количества выделенных для него ресурсов. Если x-t обозначает количество ресурсов, выделенных для /-го про- процесса, то через gt (х() мы обозначим соответствующий доход от этого процесса. Функция полезности gt (xt) представлена на рис. 1. Форма этой кривой определяется двумя важными экономическими условиями. Во-первых, небольшие количества выделенных ресурсов, в сущности, не дают никаких дохо- доходов и, во-вторых, дальнейшее увеличение этих количеств приводит, в конце концов, к эффекту насыщения («закон
26 ОДНОМЕРНЫЕ ПРОЦЕССЫ РАСПРЕДЕЛЕНИЯ [гл. t убывания доходов»). Как уже говорилось, х{ и gt (xt) часто выражаются в разных единицах. Предположения, касающиеся независимости процессов и аддитивности полезностей, приводят к выражению R(*i,x*...,XN) = gi(xd-{-g%(xJ-\-...-\-gN(xJd A.3) для общей полезности процесса распределения. Задача максимизации возникает оттого, что в наличии обычно имеется лишь ограниченное количество ресурсов. Распределение ресурса Рис. 1. Обозначая это количество через х> мы приходим к условию- xi-\-x2-\-...-\-xN = x, A.4) где Xi ^ 0. Далее нужно максимизировать функцию R {xh хь.., при x-v удовлетворяющих этим ограничениям. 4. ОБСУЖДЕНИЕ Отметим попутно, что одна из наиболее значительных трудностей, встречающихся при всяком изучении экономиче- экономических, промышленных или военных процессов, связана с опре- определением индивидуальных и совокупных функций полезности. Во многих ситуациях мы не знаем ни точного вида этих функций, ни даже того, что именно следует максимизировать. В частности, это всегда характерно для процессов с суще- существенным участием людей. Весьма полезным в целом ряде исследований этого рода оказывается моделирование про- процессов.
5] АППАРАТ МАТЕМАТИЧЕСКОГО АНАЛИЗА 27 б. АППАРАТ МАТЕМАТИЧЕСКОГО АНАЛИЗА Для решения экстремальных задач описанного типа часто применяется аппарат математического анализа. Вводя множи- множитель Лагранжа *) X, мы образуем вспомогательную функцию g .-f-ATjv) A.5) ii приравниваем нулю ее частные производные. Этим путем получаются уравнения #С*,)-Х = О, /=1,2 Л/. A.6) Разрешая их относительно хь Xi = ht (X), мы находим X из условия A.4) A.7) Таковы обычные действия для определения максимума R. Например, если требуется минимизировать функцию R = ахх\ -|- а^х\ -f-... + о,л\х% аг ^> О A.8) при ДГ|^О, удовлетворяющих A.4), формула A.6) дает: х=±_9 A.9) Уравнение A.7) тогда будет иметь вид X^i=Xi (L10) откуда A.11) *) Особое внимание будет уделено множителям Л а гранта в главе II (§ 13 и следующие за ним), где этот классический метод будет сочетаться с динамическим программированием.
28 ОДНОМЕРНЫЕ ПРОЦЕССЫ РАСПРЕДЕЛЕНИЯ [ГЛ. 1 Таким образом, минимальное значение равно -?-. A-12) Этот пример задачи и ее решения типичен для учебников по математическому анализу. К несчастью, задачи, возникаю- возникающие в сколько-нибудь важных приложениях, часто менее всего подходят под установившиеся методы и требуют более тонкого исследования. Впрочем, небезынтересно, что большая часть примеров, употребляемых для иллюстрации мощи аппарата математиче- математического анализа, в том числе и пример, данный выше, вовсе не нуждается в этом аппарате и может быть решена более строго и эффективно с помощью гораздо более элементар- элементарной теории неравенств. 6. ТРУДНОСТИ Рассмотрим теперь несколько подробнее те принципиаль- принципиальные трудности, с которыми мы сталкиваемся, когда пытаемся применить методы математического анализа к задаче распре- распределения ресурсов, описанной в §§ 2 и 3. А. Относительный экстремум. То, что тангенс угла наклона касательной к кривой равен нулю в точке отно- относительного максимума или Относительный в точке относительного минимума, позволяет ду- мать об использовании математического анализа для решения задач опти- оптимизации (рис. 2). О а я Соответствующий ре- Рис. 2. зультат имеет место и для функций нескольких пе- переменных, если рассматривать не касательную к кривой, а касательную к поверхности плоскость. К сожалению, обращение в нуль производной есть только необходимое, но не достаточное условие для внутреннего экстремума. Производная равна нулю не только во всех
ТРУДНОСТИ 29 внутренних экстремальных i очках, она может быть также равна нулю и в других внутренних точках — точках перегиба. Например, для кривой, изображенной на рис. 3, произ- производная g (х) равна нулю в точках Ь{ и Ь,2 относительного максимума, в точках ах и а.2 относительного минимума и в точке сь которая является точкой перегиба. Это обстоятельство, причиняющее неудобства уже при исследовании функций одной переменной, становится почти непреодолимой преградой для успешного применения матема- математического анализа в многомерных задачах максимизации, особенно, когда число независимых переменных велико. Рассмотрим здесь за- : дачу максимизации функ- ' ции A.5), когда каждая функция gt (x) имеет вид, __ показанный на рис. 1. В О с, х этом случае каждое из Рис. 3. уравнений A.6) может иметь два корня. Так как не ясно, какой корень соответ- соответствует абсолютному максимуму, мы должны испытать все комбинации значений. Эта процедура требует оценки 2^ слу- случаев. Если iV= 10, то имеем 1024 случая, что не так уже велико; если /V=20, число случаев превысит 106 и должно внушать известное уважение. Функции полезности еще более сложной природы будут давать гораздо большие наборы возможностей, что создает не только теоретическую трудность, но и серьезное препятст- препятствие для численного решения. Б. Ограничения. Мы применили традиционным об- образом метод классического анализа, не уделив внимания тому факту, что в действительности во многих ситуациях мы должны разыскивать максимум в некоторой конечной области. Равенство производных нулю, как мы знаем, определяет внутренний экстремум, но вообще не служит признаком экстремума, который достигается на границах области изме- изменения. В качестве примера возьмем функцию одной пере- переменной g(x), приведенную на рис. 4. Производная g'(х) равна нулю при а{ и Ь{ в точках относительного минимума и максимума соответственно, но не равна нулю при л; = 0
30 ОДНОМЕРНЫЕ ПРОЦЕССЫ РАСПРЕДЕЛЕНИЯ [ГЛ. I в точке, где g(x) принимает свой абсолютный максимум в интервале [0, х0]. Как ни печально, это осложнение является обычным в изучении экономических и технических управляе- управляемых процессов, для которых условия вида <**<**<** A.13) естественны и разумны. В задачах максимизации с многими переменными число всех возможностей, включающих точки относительного экстремума, стационарные точки более слож- сложной природы и точки гра- границы, настолько велико, что приходится отверг- нуть саму идею перебора. Важно понимать, то в задачах оптимизации, которые сводятся к ком- , бинаюрпым задачам, тре- х бующим оценки каждого Рис. 4. случая в отдельности, об- общее число случаев, как правило, возрастает экспоненциально или даже быстрее с ростом числа измерений. Если, например, общее число всех случаев 2^, мы отнюдь не удваиваем вычислительное время, когда переходим от N к 27V, скорее мы совершенно меняем его порядок. Об этом специально пойдет речь в § 16. С другой стороны, подобное увеличение времени может быть только помехой. Потратить на вычисления 100 минут вместо 10 нетрудно, если ответ имеет хоть какое-нибудь значение. Однако необходимость посвятить вычислительному решению 100 часов вместо 10 может поставить перед дилем- дилеммой: придерживаться- ли данной важной линии исследования или отказаться от нее в пользу направления, допускающего более легкое продвижение. Сегодня, как никогда раньше в истории науки, характер теоретической постановки стремится идти рука об руку с вычислительной осуществимостью. В. Максимизация по дискретным множе- множествам. Аппарат классического анализа приспособлен к ре- решению задач оптимизации с непрерывным изменением неза- независимых переменных. Вообще разумно использовать этот тип изменения в качестве приближения к реальной действитель- действительности. Однако в ряде случаев подобное сглаживание оказы-
ТРУДНОСТИ 31 вает серьезное влияние на точность решения. Один из край- крайних случаев возникает, когда каждая переменная может при- принимать только два различных значения, 0 или 1. Обычно посредством того или иного искусного приема непрерывное изменение ввести можно. Оптимизация же по дискретным множествам в основном требует но- новых методов, и в настоя- настоящее время много важных классов задач находится целиком вне нашей дося- досягаемости. Г. Недифферен- Недифференцируем ые функции. Как известно, существуют непрерывные функции, х ^Ступенчатая фуннция Рис. 5. определенные на некото- некотором интервале, которые не имеют производной ни в одной точке этого интервала. Конечно, мы не рассчитываем встре- встретить какие-либо функции такой природы в ходе физического исследования. Всякий раз, когда в нашем воображении яв- явственно возникают эти пугающие призраки, более тщательное изучение всегда показывает, что «патология» появилась вслед- вследствие некоторых предпо- предположений, лишенных физи- физического смысла. Тем не менее вполне можно встретить функ- функции, несущие различные ^ несущественные неудоб- 0 х ства и помехи, такие как рис. б. отсутствие непрерывно- непрерывности в конечном множестве точек или односторонние производные. Ступенчатые функции (рис. 5) являются простейшими среди них и в качестве та ковых служат полезными приближениями более гладких, но гораздо более сложных функций. Другой интересный и полезный класс функций образуют кусочно-линейные функции, задаваемые следующими выраже- выражениями (рис. 6): g(x) = max (ахх -\-bx, а^х-\-Ьь ..., akx-\-bk). A.14)
32 ОДНОМЕРНЫЕ ПРОЦЕССЫ РАСПРЕДЕЛЕНИЯ \гЛ. Т Работая с функциями этого типа, мы можем брать произ- производные при условии, что мы знаем интересующий нас интер- интервал. Если этот факт неизвестен, мы сталкиваемся с многими неприятными чертами задач комбинаторного поиска, уже упоминавшимися ранее. Весьма часто определение места осо- особенностей составляет существенную часть решения. \ Д. Линейность. Трудности противоположного харак- характера сопутствуют задачам, в которых все встречающиеся функции линейны.* В этом случае все производные существуют, но дают небольшую информацию, так как a priori известно, что экстремумы достигаются в граничных точках области изменения. Теория линейных неравенств со своим ответвле- ответвлением, линейным программированием, специально предназна- предназначается для изучения задачи максимизации линейной формы Л' LN=%ciXi A.15) при условиях Xt^-O и 2>*/> /=1,2,..., М. A.16) Этот универсальный инструмент уделяет незначительное внимание конкретной структуре исследуемого процесса. Поэтому в определенных ситуациях можно надеяться найти гораздо более эффективные методы для решения соответствую- соответствующих задач оптимизации, и это действительно так. \~"Е. Устойчивость. Выше мы указали, что классиче- классический анализ основывается на непрерывном изменении незави- независимых переменных. Отсюда следует, что результаты, полу- полученные классическим, путем, весьма чувствительны к локаль- локальным изменениям и, следовательно, к малым ошибкам. Рассмотрим две функции g(x) и h(x), показанные на рис. 7 и 8; первая — идеализированная «математическая» функция и вторая — «физическая» функция. Смысл рис. 8 следующий. Если h (x) определяется как результат измерений или вычислений, то ее значение в каждой точке х никогда не равно числу h (jc), так как обладает рассеянием значений. Следовательно, если даже мы и станем определять значе- значения h(x) с высокой степенью точности, касательное направление в любой данной точке мы будем назначать весьма неохотно.
ЗАКЛЮЧЕНИЕ [аким образом, мы не намерены полагаться на методы опти- оптимизации, требующие дифференцирования. На самом деле, конечно, мы хотим использовать метод, который гарантирует, что ошибка в ответе будет не боль- большего порядка, чем ошибка в начальных данных. Это и есть то, что мы подразумеваем под устойчивостью. О х Рис. 7. О Рис. 8. Исследование устойчивости вычислительных алгоритмов занимает одно из основных мест в современной теории чис- численного анализа. Это очень трудный путь. Трудности велики, в частности, оттого, что до сих пор отчетливо не осознается тесная связь вычислительной устойчивости с первоначальным математическим выражением физического процесса. Следова- Следовательно, многие численные исследования необычайно услож- усложняются физически малосодержательными деталями исходной математической модели. 7. ЗАКЛЮЧЕНИЕ Предыдущие рассуждения приводят нас к заключению, чю такой мощный аппарат, каким является математический анализ, не всегда приводит к успеху при рассмотрении задач опти- оптимизации. В некоторых случаях он совершенно неприменим, а в других случаях его некритическое применение может дать неверные результаты. Если мы хотим гарантировать числен- численное решение для простой задачи распределения, поставлен- поставленной выше, мы должны ввести какие-то новые математи- математические методы. 2 Р. Беллкан. С. Дрейфус
34 ОДНОМЕРНЫЕ ПРОЦЕССЫ РАСПРЕДЕЛЕНИЯ [гл. Т 8. АНАЛИЗ ЧУВСТВИТЕЛЬНОСТИ Как следует оценивать полезность вычислительной схемы? Одним из подходов является следующий. Пусть требуется повторно произвести вычисления того же самого типа, но для других значений основных параметров. Можем ли мы при этом использовать информацию, полученную от перво- первоначальных вычислений, или же каждый раз мы должны про- проделывать все вычисления с самого начала? Если для любого множества параметров нужно выполнить все новые вычисле- вычисления, 10 получение желаемой информации в полном объеме становится крайне дорогостоящим предприятием. Все сказанное тесно связано с понятием анализа чув- чувствительности. В большинстве случаев при исследовании данной физической системы мы не довольствуемся определе- определением оптимального поведения системы для какого-либо од- одного множества значений параметров. Нас не оставляет желание позволить параметрам изменяться в некоторой кри- критической области значений и затем наблюдать, насколько оптимальное поведение затрагивается этими изменениями. Именно отмечая изменение в структуре линий поведения вследствие изменения в параметрах, мы и добываем наиболее существенную информацию. Эта мысль неизменно обитает в интеллектуальной сфере и объясняет успех сравнительной анатомии, сравнительной филологии, сравнительной религии и т. д. 9. ДИНАМИЧЕСКОЕ ПРОГРАММИРОВАНИЕ Высказанные идеи оформляются явным образом в теории динамического программирования. Мы начнем с рассмотре- рассмотрения некоторых простых задач для того, чтобы по возмож- возможности яснее проиллюстрировать как смысловую, так и вычи- вычислительную стороны. Как будет показано, * метод функциональных уравнений преодолевает все трудности, зафиксированные ранее, по край- крайней мере в отношении одномерных процессов распределения. Почему возникают трудности при рассмотрении более слож- сложных процессов, в чем они состоят и что можно сделать, чтобы их обойти, — всего этого мы коснемся в последующих главах.
10] ФУНКЦИОНАЛЬНЫЕ УРАВНЕНИЯ 35 Вместе с тем мы можем ободрить читателя откровенным признанием, что мы никоим образом не преодолеем и не обойдем абсолютно всех возникающих трудностей. Таким образом, имеются достаточно благоприятные возможности для исследования приложения этих новых методов. 10. ФУНКЦИОНАЛЬНЫЕ УРАВНЕНИЯ Для того чтобы исследовать конкретную задачу максими- максимизации функции R(xu хь ..., xN) = g1(xd + gi(xd + ... + gN(xN) A.17) N в области xt^0, ^ xi=xf мы погружаем ее в некоторое /=i семейство процессов распределения. Вместо рассмотрения одной задачи с данным количеством ресурсов и фиксирован- фиксированным числом процессов мы рассматриваем целое семейство таких задач, в которых х может принимать любые положи- положительные значения и N может принимать любые целые зна- значения. То, что на первый взгляд, по-видимому, может показаться статическим процессом, мы искусственно развертываем во времени, допуская, а в действительности требуя, производить распределения ресурсов в каждую единицу времени. Сначала какое-то количество ресурсов назначается /V-му процессу, затем (N— 1)-му и т. д. Поступая таким образом, мы вво- вводим динамический процесс распределения. Перейдем теперь к анали1ическому рассмотрению. Так как максимум R (xlf хь ..., xN) в указанной области зави- зависит от х и Л/, мы сделаем эту зависимость явной, задав по- последовательность функций {fN(x)\, определенных для N= 1, 2, ..., лг^О, следующим образом: fN(x) = maxR(xl, x2, ..., хЛ A.18) Iх А N где ^>.0и^ хг = х. /=1 Функция fN(x) выражает оптимальный доход, получае- получаемый от распределения количества ресурсов х по N процес- процессам. В двух частных случаях элементы последовательности 2*
36 ОДНОМЕРНЫЕ ПРОЦЕССЫ РАСПРЕДЕЛЕНИЯ [ГЛ. I {/д, (х)} принимают особенно простой вид. Очевидно, Дг@) = 0, /V=l, 2, ..., A.19) если ^@) = 0 для любого /, что является разумным пред- предположением. Также, очевидно, fi(x) = gi(x) A.20) для х^ 0. Легко найти рекуррентное соотношение, связывающее fN(x) и fN_x(x) для произвольных N и х. Пусть хАП 0^xN^x, — количество ресурсов, назначенное для /V-ro процесса. Тогда, каково бы ни было точное значение xN> мы знаем, что остающееся количество ресурсов л: — xN будет использовано так, чтобы получить максимальный доход от остающихся N— 1 процессов. Так как этот оптимальный доход от распределения коли- количества ресурсов х — xN по N—1 процессам по определе- определению есть /7V_1 (х — xN), назначение xN для N-yo процесса приводит к общему доходу для модели с N процессами. Ясно, что оптимальным будет такой выбор xN, который максимизирует эту функцию. Таким образом, мы получаем основное функциональное уравнение: fN(x)= max [gN(xN)+fN^(x-xN)] A.22) для N= 2,3,..., х ^ 0, причем fx (x) определяется со- согласно A.20). 11. ПРИНЦИП ОПТИМАЛЬНОСТИ В ходе предшествующего изложения мы применили очень общий метод, известный под названием принципа оптималь- оптимальности. Принцип оптимальности. Оптимальное поведение обла- обладает тем свойством, что, каковы бы ни были первоначальное
12J прямой вывод функционального уравнения 37 состояние и решение в начальный момент, последующие ре- решения должны составлять оптимальное поведение относи- относительно состояния, получающегося в результате первого ре- решения. Вся наша дальнейшая работа будет основана на приме- применении этого простого свойства многошаговых процессов ре- решения. В этом частном случае принцип без труда устанав- устанавливается путем соединения индукции и доказательства от 1фО1ИВНОГО. 12. ПРЯМОЙ ВЫВОД ОСНОВНОГО ФУНКЦИОНАЛЬНОГО УРАВНЕНИЯ Для тех, кто поначалу не склонен доверять принципу оптимальности, дадим следующий вывод A.22). Замечая, что max = max [ max ], A.23) + + + 0 + + мы можем написать цепочку равенств /л, (х) = max [gN (xN) + gN_ j (xN *1+* + ... + *дг—* max [ max -rgN-l(xN_J-Jr...Jrgi = max lgN(xN)- и^х <лг "• -f-1* ^J' что и дает требуемый результат,
38 ОДНОМЕРНЫЕ ПРОЦЕССЫ РАСПРЕДЕЛЕНИЯ [ГЛ, I 13. ОБСУЖДЕНИЕ Рекуррентное соотношение A.22) дает теоретический метод для индуктивного получения последовательности {fN(x)}> если только fx (х) известна. Действительно, fx (х) опреде- определяет /2(х) и т. д. Важный вопрос, который мы должны по- поставить в первую очередь, заключается в оценке выполни- выполнимости нового метода; затем нужно установить, преодолевает ли он затруднения, на которые наталкиваются обычные методы. Как мы увидим, новый метод является гибким и дейст- действенным. Его силу мы продемонстрируем на примерах. Извест- Известный опыт позволяет, таким образом, утверждать, что метод динамического программирования дает быстрое, простое и правильное решение общей задачи, поставленной в § 3. 14. ВЫЧИСЛИТЕЛЬНАЯ СХЕМА Рассмотрим теперь внимательно вычислительную сторону использования рекуррентного соотношения A.22) для опре- определения последовательности {fN(x)}- Хотя вначале мы будем обсуждать совсем наивные и прямые методы, впоследствии мы изложим ряд более тонких подходов. Так как мы отказались от классического анализа и тем самым от аналитических представлений, мы должны сначала уяснить, что значит знать функции gi(x), i=l, 2, ...,ичто значит вычислять элементы последовательности [fN (x)}. Под функцией, определенной при х^О, например под gt (x) или ft (x), мы будем понимать множество значе- значений, принимаемых, когда х пробегает все неотрицательные значения. Это — обычное определение. Разумеется, невозможно протабулировать все значения функции и даже достаточно большое конечное множество значений. Следовательно, оста- остается использовать какой-нибудь тип интерполяционной схемы, которая позволит нам восстанавливать общее значение, игходя из немногих аккуратно выбранных значений. Искажение, связанное с выбором значений, которые мы будем табулировать, чтобы изобразить функцию, очень малоЛ Практический опыт, требования к памяти и точности, нако- наконец, стоимость вычислений играют важную роль при этом выборе. Первоначально мы рассмотрим одну простую и оче- очевидную идею, а позже обсудим более совершенный метод.
|4] ВЫЧИСЛИТЕЛЬНАЯ СХЕМА 39 Чтобы задать в интервале [0, лг0] все множество значе- значений / (х), воспользуемся значениями, принимаемыми в ко- конечном числе точек решетки х = 0, А, 2Д, ..., RA = xQ. A.24) Затем постулируем, что каждый элемент последовательности {/ (х)} вычисляется и табулируется в каждой из этих точек и только в этих точках. Значения fN{x) для л*, отличных от точек решетки, будут получаться интерполяцией. Тип используемой интерполяции будет зависеть от точности, которая требуется, и от времени, необходимого для достижения этой точности. Если , A.25) то простейшее приближенное значение fN (x) получается в виде A.26) Следующее простейшее приближение доставляется линейной интерполяционной формулой В нужных случаях можно использовать более точные интер- интерполяционные формулы, основанные на полиномах более вы- высокой степени. {ТВ задаче распределения, сформулированной выше, вполне разумно разрешить переменной xN изменяться на том же самом множестве точек, на котором изменяется х. Поэтому в процессе максимизации xN может принимать только зна- значения, указанные в A.24). Максимизация в A.22) выполняется путем непосредствен- непосредственного перебора случаев и сравнения величин без каких-либо услуг со стороны обычного анализа. В последующих главах мы обсудим методы, которые нередко дают громадное упро- упрощение процедуры поиска и, следовательно, большую эконо- экономию вычислительного времени. В данный момент, однако, мы исследуем общий случай, в котором рассматриваемые функ- функции не обладают той особой структурой, которая может быть использована для облегчения поиска.
40 ОДНОМЕРНЫЕ ПРОЦЕССЫ РАСПРЕДЕЛЕНИЯ [ГЛ. t Обсудим наши действия более обстоятельно. Когда N= I, функция /t (х) немедленно определяется равенством fi(x) = gl(x). A.28) Множество значений {fx (kА)}, /г = 0, 1,...,/?, с этого момента хранится в памяти вычислительной машины *), и мы в со- состоянии вычислить /%(х) с помощью условия A.22) для N=2, именно: /*(*)= max [ft (**)+/i (*-*«)]. A-29) 0 где х принимает только значения 0, А, 2А, ..., R\. Так как никакой процесс перебора не может осуществить максими- максимизацию на непрерывной области значений, мы должны заме- заменить отрезок [0, х\ дискретным множеством. Тогда соотно- соотношение A.29) заменится аппроксимирующим соотношением Мх)= max [й(АД)+/1(^-АД)]. A.30) l* = 0, I R] Функция g2 (x) в виде последовательности {ft (?Д)} также хранится в памяти вычислительной машины. Процесс макси- максимизации начинается с того, что машина вычисляет величины ft @) -]-/i (дг) и ft (А) -г fx (x — А) и затем сравнивает их, удерживая большую в памяти. Далее вычисляется ftBA)-f- -f-/i (x — 2Д) и сравнивается с большей из этих величин. Новую большую величину снова сохраняем в памяти, и т. д. Процесс продолжается до тех пор, пока k не примет все допустимые значения. В результате мы получим /2(дг) для данного значения.х. В ходе этого процесса поиска вычислительная машина определяет не только значения /2 (дг) при дг = О, А, ..., RX но также значение (или значения) д:2, при котором в A.29) достигается максимум. Предположим пока, что абсолютный максимум принимается только при одном значении х. Общий случай мы обсудим ниже. Так как это единственное значение будет зависеть от х, обозначим его х,2(х). Вычислительная машина запоминает как х% (х), так и /2(х) для каждого х. *) Если не оговорено противное, «память* будет отождест- отождествляться с «быстродействующей памятью» (оперативной памятью).
15] НЕЕДИНСТВЕННОСТЬ МАКСИМУМА 41 В итоге после двух шагов этого процесса мы можем заполнить таблицу, подобную таблице 1.1. Таблица 1.1 X 0 A 2Л — — — XS[X) _ — В этом случае fx (х) = gl(x) и xt(x) = x. Указанная таблица дает решение двухшаговой задачи максимизации в следующем смысле. Если задано частное зна- значение хг мы просматриваем столбец значений х2(х) до тех пор, пока не наткнемся на соответствующее значение х,2. Как только это значение найдено, мы приходим к задаче определения оптимального распределения в одношаговом про- процессе с ресурсами х — х^(х). Вся эта операция поиска может быть, конечно, проделана самой вычислительной машиной. Продолжая процесс N ша- шагов, можно получить решение или в виде аналогичной таб- таблицы, или даже в виде выборов xN> xN_v ..., хь х1} свя- связанных с каждым значением х. 15. НЕЕДИНСТВЕННОСТЬ МАКСИМУМА Числа, хранящиеся в памяти машины, обычно верны до десяти или более значащих десятичных цифр в зависимости от того, что требуется. Поэтому крайне маловероятно, что два значения х2 когда-либо дадут одно и то же максимальное значение. Тем не менее реальный процесс решения может обладать несколькими оптимальными поведениями, исключа- исключающими друг друга. В некоторых случаях нам необходимо знать лишь максимальный доход и одно из оптимальных пове- поведений; в других случаях очень нужны все оптимальные по- дения, и мы можем расценивать этот результат более вы- высоко, чем определение собственно максимального дохода.
42 ОДНОМЕРНЫЕ ПРОЦЕССЫ РАСПРЕДЕЛЕНИЯ [гл. I Кроме того, приближенные оптимальные поведения, кото- которые дают доходы, немного (скажем, на один процент) отли- отличающиеся от действительного максимума, могут оказаться столь же важными, как и точное решение. Они могут ока- оказаться даже более важными, если нам нужны простые при- приближения в сложных ситуациях. Эти почти оптимальные по- поведения можно легко получить, потребовав, чтобы вычисли- вычислительная машина удерживала в памяти не только максималь- максимальное значение и значение xi} которое его дает, но также xt1 дающие значения в некоторой окрестности максимума. Это увеличивает требования к памяти и время вычислений, но не до такой степени, чтобы не использовать идею совсем. 16. ЭШШЕКТИВНОСТЬ ДИНАМИЧЕСКОГО ПРОГРАММИРОВАНИЯ ПО СРАВНЕНИЮ С ПРЯМЫМ ПЕРЕБОРОМ Поскольку первоначальная непрерывная вариационная за- задача была заменена дискретной, мы можем разыскивать ма- максимальное значение с помощью простого перебора случаев. Особого изящества или привлекательности в таком подходе нет, но он может сослужить службу там, где более искусные методы не имеют успеха. Что касается ручных вычислений, условия времени и точности обычно исключают этот метод. Но раз есть цифровая вычислительная машина со своей уди- удивительной скоростью счета, методы перебора оказываются в известной мере осуществимыми. Возьмем некоторые простые процессы распределения и по- посмотрим, с чем было бы связано непосредственное освидетель- освидетельствование всех возможностей. Для начала исследуем простую ситуацию, где каждая из х-ь может принимать десять раз- различных значений. Тогда процесс максимизации с /V пере- переменными приведет к 10^ различным множествам выборов. Но в этом процессе общее число возможностей в действи- действительности значительно меньше, так как выбор xN немедленно ограничивает возможное изменение других xt. Игнорируем временно этот пункт. Как мы увидим, это не изменит неко- некоторые из наших основных заключений. Для десятишагового процесса мы должны будем тогда обследовать 1010 случаев. Возможно, это кажется не таким уж большим числом, но несложный расчет дает некоторое
16] ЭФФЕКТИВНОСТЬ ДИНАМИЧЕСКОГО ПРОГРАММИРОВАНИЯ 43 представление об его истинной величине. Если каждую милли- миллисекунду обследовалось бы одно множество значений x-v то всего потребовалось бы 107 секунд, что более 2-Ю3 часов и, стало быть, есть величина порядка четырех месяцев *). Это непомерно большое количество времени, чтобы тратить его на численное решение какой-либо задачи, которая представляет действительность так же грубо, как принятая нами. Предположим, что мы хотим рассмотреть несколько более сложную задачу, в которой имеется 20 различных процессов. Рассуждая по-прежнему нестрого, положим, что это влечет за собой 1020 различных возможностей. Так как последняя величина в 1010 раз больше 1010, мы видим, что, как бы ни удавалось сокращать время процесса поиска, этот экспонен- экспоненциальный рост числа возможностей с возрастанием размерности процесса сделает перебор случаев невозможным. Кром*е того, мы видим, почему можно так вольно обращаться с общим числом случаев. Если допускается 100 или 1000 выборов для каждой переменной, изменение в порядке величины числа возможностей для десятишагового процесса распределения посредством умножения на 1010 не влияет существенно на силу нашей аргументации. Но довольно о наивных подходах к задачам оптимизации! Следует четко осознать, что процессы большого масштаба будут требовать как электронных, так и математических средств для своего исследования. Почему же все-таки метод динамического программирования дает возможность легко и быстро решать задачи, намного более сложные, чем рассмотренная выше? Как подсказывают предыдущие рассуждения, объяснение этому нужно видеть в том, что применение метода функциональных уравнений эквивалентно использованию некоторого процесса поиска, который является гораздо более эффективным, чем примитивное обследование всех случаев. Ключ доставляется принципом оптимальности. Согласно этому принципу, выбрав некоторое начальное xN, мы затем отказываемся от обследования всех поведений, включающих этот частный выбор xN, а рассматриваем только те поведе- поведения, которые оптимальны для (/V—1)-шагового процесса *) В оригинале здесь допущена ошибка, приводящая к оценке в 10 лет. (Прим. ред.)
44 ОДНОМЕРНЫЕ ПРОЦЕССЫ РАСПРЕДЕЛЕНИЯ [ГЛ. I с ресурсами х— х д„ Эгот магический способ позволяет со- сохранить аддитивность, а не мультипликативность числа опе- операций. Время, требуемое для двадцатишагового процесса, теперь оказывается примерно вдвое больше времени, тре- требуемого для десятишагового процесса. 17. КАКИЕ ТРУДНОСТИ МЫ ПРЕОДОЛЕЛИ? В § 6 мы обсудили главные трудности на пути примене- применения методов классического анализа к задачам максимизации. Остается теперь рассмотреть, до какой степени метод дина- динамического программирования устраняет эти препятствия. Во-первых, из простого индуктивного доказательства ясно, что метод всегда дает абсолютный, а не относительный максимум. Во-вторых, заметим, что дополнительные условия того типа, которые мы ввели, скорее упрощают задачу, нежели усложняют ее. Любое условие вида а{^х^Ь{, ограничивающее число возможностей на каждсм шаге, упро- упрощает процесс поиска и, следовательно, уменьшает вычисли- вычислительные усилия. Другими словами, чем меньше поведений имеется на каждом шаге, тем быстрее вычисления. Точно такие же доводы применимы к задачам максимизации по дискретным множествам. Чем меньше число допустимых выборов, тем проще вычисления. Простейшими задачами будут те задачи, где каждое х{ может принимать только нем! огие значения, скажем, 0 или 1. Так как мы употребляем только табличные значения рассматриваемых функций, точная аналитическая структура последних не представляет для нас никакого интереса. Это означает, что наличие и свойства производных любого порядка не должны касаться нас вообще и линейность не должна быть нам помехой. Вместе с тем обратим внимание, что, когда обнаруживаются некоторые структурные особенности, как, например, выпуклость, вогнутость, монотонность и т. д., .они могут быть весьма эффективно использованы для упро- упрощения процесса поиска. Вопросы этого рода будут всесторонне обсуждены в последующих главах. Наконец, мы подходим к вопросу об анализе чувстви- чувствительности, поднятому в § 8. Двумя весьма важными парамет- параметрами в процессах распределения знакомого нам типа являются количество наличных ресурсов и число процессов, которые
17] К\КИЕ ТРУДНОСТИ МЫ ПРЕОДОЛЕЛИ? 45 мы можем привлекать. Наше решение, выражаемое при помощи двух функций fN(x) и xN(x)y получается именно как функция этих основных параметров. Вопросы, которые естественно возникают в ходе теорети- теоретической постановки и решения указанных задач распределения ресурсов, следующие: a) Как доход и поведение зависят от начальных условий? b) Каков результат изменения начального состояния при использовании некоторого оптимального поведения? c) Какова выгода от добавления еще одного способа или о г продолжения процесса еще на один шаг? Не имея достаточно прозрачного аналитического решения, довольно трудно извлечь из стандартной формулировки информацию этого типа. Однако формулировка в терминах динамического про- программирования автоматически включает первоначальную задачу в семейство аналогичных задач, в которых основные пара- параметры х и N принимают значения из некоторых множеств, и это позволяет нам ответить на поставленные фундаменталь- фундаментальные вопросы. Например, в изучаемом процессе распределения решения находятся для способов, число которых изменяется от 1 до /V, и для количеств ресурсов от 0 до х. Следова- Следовательно, после того как для TV-шагового процесса было полу- получено вычислительное решение, мы можем определить взаимо- взаимообмен между параметром состояния х и числом шагов N для огромного ряда подзадач. Так как оптимальный доход дается, как функция основных параметров х и TV, анализ чувстви- чувствительности автоматически сопутствует решению. Отсюда вытекает, что предложенный нами метод преодо- преодолевает все препятствия, о которых мы говорили. Ниже будет показано, почему наряду со всеми этими преимуществами мы тем не менее не имеем шаблонного решения для всех типов процессов распределения. Можно с уверенностью сказать, что все еще существует большая потребность в изобретатель- изобретательстве и что остается выполнить много интереснейших исследо- исследований, прежде чем можно будет достаточно эффективно рас- рассмотреть значительное число важных процессов. В этой главе мы намерены рассмотреть в деталях неко- некоторые простые задачи с тем, чтобы впоследствии, когда мы перейдем к более трудным задачам, не возникало никаких вопросов, связанных с основными идеями.
46 ОДНОМЕРНЫЕ ПРОЦЕССЫ РАСПРЕДЕЛЕНИЯ [ГЛ. I 18. БЛОК-СХЕМА ВЫЧИСЛИТЕЛЬНОГО ПЛАНА ДЛЯ ОБЩЕГО ПРОЦЕССА РАСПРЕДЕЛЕНИЯ Обсуждая сведение задач от математической постановки к программе для вычислительной машины, что займет большую часть нашего последующего изложения, мы будем часто пользоваться блок-схемами. Они представляют собой диаграммы, разлагающие вычислительный процесс на его составные части и показывающие эти ;части достаточно подробно, чтобы их легко можно было программировать, даже не будучи хорошо знакомым с первоначальной математической задачей или мето- методом. Следуя одной из этих схем, можно точно проследить, как задача может быть решена численно (рис. 9). Так как настоящий пример является вводным, мы теперь дадим детальное объяснение различным этапам. Встречаю- Встречающиеся в дальнейшем блок-схемы будут име1ь аналогичную структуру, и к ним не будет даваться дополнительных объяс- объяснений. Этап 1. Основная программа будет применять рекуррент- рекуррентное соотношение A.22),чтобы вычислить таблицу значений функ- функции fk(v), используя fk_x(x). Для того чтобы включить сюда начальный шаг вычислений — уравнение A.20), которое дает fx (х) в пределах общей процедуры, — мы определяем функцию /0 (х)у тождественно равную нулю. С помощью этого мы избегаем составления особой программы для определе- определения fx (x). На практике запоминание нулей выполняется просто посредством установки всей памяти на нуль до введения перфокарт с исходными данными. Тогда область, обозначен- обозначенная как fo(x), автоматически является нулем. Мы можем теперь заставить вычислительную машину определять /\ (х)у используя /0(х), тем же способом, как она определяет fk{x) на основе fk_x (x). Несмотря на то, что fx (x) может быть вычислена гораздо быстрее непосредственно из уравне- уравнения A.20), экономия, получаемая вышеуказанным путем в объеме и времени программирования, вполне компенсирует наше рассмотрение. Интуитивное оправдание равенства нулю функции /0 (х) состоит в том, что, каково бы ни было исход- исходное количество ресурсов, не может быть никакого дохода при полном отсутствии способов производства. В некоторых других процессах нераспределенные ресурсы будут иметь некоторую стоимость, и эта стоимость будет взята равной /0 (х).
18] БЛОК-СХЕМА ПРОЦЕССА РАСПРЕДЕЛЕНИЯ 47 Этап 2. Индекс k будет обозначав число способов, ко- которые мы рассматриваем (ср. § 3). Вначале мы возьмём за- задачу, включающую только один способ. Далее индекс k будет возрастать по мере разверты- развертывания вычислений (см. этап 16). Этап 3. Будем вычислять таблицу значений, предста- представляющую функцию fx(x) в дискретных точках. Начальное значение аргумента х, для ко- которого нужно вычислить /i (х)у равно нулю. Вычислив и запом- запомнив /i@), мы вычисляем f{ (А), затем ЛBА) и т. д. до тех пор, пока не заполним всю таблицу. Этап 4. Внутренняя рабс- чая ячейка памяти fJ будет со- содержать «наилучший доход до сих пор», когда мы испыты- испытываем различные поведения, ра- разыскивая максимизирующее. Записывая с самого начала в ячейку большое (по модулю) отрицательное число (обозна- (обозначенное через — оо, но, конечно, не являющееся действительной бесконечностью), мы обеспечи- обеспечиваем, что испытываемое первое решение о поведении будет принято как «наилучшее до сих пор». Как и на этапе 1, это — искусственный элемент, вводи- вводимый, чтобы избежать рассмо- рассмотрения первого шага процесса в виде особого случая. Этап 5. Мы применяем обозначение xk (x)y чтобы ука- указать, что наше решение о рас- Рис. 9. пределении дало количество начального ресурса х на шаге k. Так как сначала /? ^= 1 и
48 ОДНОМЕРНЫЕ ПРОЦЕССЫ РАСПРЕДЕЛЕНИЯ [ГЛ. f лг = О, мы испытываем' О в качестве начального значения для хх@). Этап 6. Этот этап составляет главную часть вычислений. Только что мы детализировали шаг к. ресурсы х и рас- распределение xk (x). Используя функцию дохода gk (xk) и опти- оптимальный доход на (k—1)-м шагеД.^дг — xk), мы вычисляем общий доход, связанный с данным решением на данном шаге, и запоминаем это число в ячейке а. Этап 7. Сравним это число с числом в ячейке р, наи- наилучшим доходом от всех ранее испытанных поведений для этого частного состояния и шага. Если текущее решение дает меньший доход, чем некоторое предыдущее решение, переходим к этапу 9. Если это — наилучшее решение о рас- распределении среди испытанных до сих пор, выполняем этап 8. Этап 8. Заменим содержимое ячейки C большим доходом, который как раз и хранился в ячейке а. (Там, где смысл очевиден, мы не будем стараться проводить различие в обо- обозначениях между наименованием ячейки и ее содержимым.) Ячейка -[ должна содержать «наилучшее поведение до сих пор», следовательно, мы помещаем xk в ячейку -у. Этап 9. Исследовав эффект назначения количества xk для &-го способа, мы теперь готовимся испытать большее назначение xk -f- Д. Этап 10. Является ли эго назначение большим, чем наше начальное количество ресурсов х? Если да, то это решение недопустимо и мы переходим к этапу 11. Если хк-{-к — до- допустимое решение, мы возвращаемся к этапу 6, чтобы оце- оценить это решение и сравнить его с предыдущими. Этап 11. Мы только что сравнили все решения для опре- определенного начального количества ресурсов х. Запомним мак- максимальный достижимый доход fk(x) и решение, дающее эют доход xk (х). Этап 12. Увеличим первоначальное количество ресурсов на А. Мы теперь имеем новую задачу, включающую то же самое число технологических процессов, но с несколько большим начальным количеством ресурсов. Этап 13. Если новая задача включает количество ресур- ресурсов большее, чем то, с которого мы начали задачу с N про- процессами, мы, очевидно, не можем достигнуть задачи с k про- процессами и этим большим количеством ресурсов и нам не нужно вычислять этот результат. Таким образом, мы завер-
19] численные результаты 49 шили вычисление таблицы значений fk{x) и переходим к этапу 14. Если этот новый х допустим, мы начинаем весь процесс максимизации снова, возвращаясь к этапу 4. Этап 14. «Вывод» результатов текущего этапа. Эги ре- результаты, и в частности политика в виде некоторой функции количества ресурсов, будут использованы позже, чтобы опре- определить дейсгвительное оптимальное поведение, и поэтому долж- должны быть записаны на ленте или отперфорированы на картах. Этап 15. Программа относится к некоторым ячейкам памяти, в которых она отыскивает/^ (х), и к другим ячей- ячейкам, где она запоминает новую таблицу fk (x). В этом месте в программе мы завершили применение старой таблицы для вычисления новой. С этого момента мы будем использовать новую таблицу fk (x) для вычисления fk+l (x). Так как fk (x) должна теперь играть роль «старой» таблицы, гораздо легче и более действенно заново внести ее в память, чем изменить адреса всех ссылок для нее в программе. Это новое разме- размещение целого массива памяти называется «переносом блока» и выполняется в долю секунды. Этан 16. Теперь мы переходим к следующему способу и готовимся решать семейство задач, включающих k-\~\ вместо k процессов. Этап 17. Если мы вычислили именно fN{x)y то k = N и /с —j— 1 == TV —{— 1 больше, чем N. Мы тогда останавливаемся и объявляем вычисления законченными. Если же k меньше или равно N, мы возвращаемся к этапу 3. Это завершает наш анализ действительных операций, производимых вычислительной машиной. На всем протяжении книги мы неоднократно будем ссылаться на статистику вычислений, основанную на нашем опыте работы с вычислительной машиной RAND-Джонниак. Описание машины дано в приложении V. 19. ЧИСЛЕННЫЕ РЕЗУЛЬТАТЫ В предшествующем разделе мы описали действительные этапы вычислительного решения общей задачи распределения ресурсов. В ходе решения мы получили ряд из N таблиц, каждая из которых доставляет общий доход и начальное поведение для фиксированного числа способов и некоторого интервала значений начальных ресурсов.
50 ОДНОМЕРНЫЕ ПРОЦЕССЫ РАСПРЕДЕЛЕНИЯ [гл. t /V- хк(х) — Печать к и а X к t — а -~ * X к Использование этих таблиц для определения решения частной задачи (при данном числе способов и данном началь- начальном состоянии) составляет вторую и отличную фазу вычислений. Метод упомянут кратко в последней части § 14. Здесь мы хотим обсудить этот метод более подробно и попутно обеспечить логическую программу для вычислений. Основное соображение заключается в том, что последняя таблица выдает оптимальное начальное распределение для процесса, в котором участ- участвует N способов; оно в свою очередь определяет началь- начальное состояние для задач, включающих N—1 спосо- способов. Соседняя таблица тогда определяет оптимальное вто- второе решение. Аналогичным образом все выходные таб- таблицы поведений обрабаты- обрабатываются в порядке, обратном тому, в котором они вычис- вычислялись. Единственная инфор- информация, используемая на этом пути, — множество таблиц Рис. 10. поведения {xk (х)}. Таблицы доходов [fk (x) \ были суще- существенны для образования последовательности результатов, но они не являются необходимыми в этой второй фазе вычислений. Дадим подробное объяснение блок-схемы (рис. 10) для второй фазы решения задачи распределения. Этап 1. Мы начинаем с рассмотрения задачи, включающей N способов производства и начальное количество ресурсов л*0. Ячейка k содержит переменную, обозначающую число спосо- способов; х обозначает количество ресурсов. Этап 2. Определим поведение, соответствующее выше- вышеуказанной ситуации. Это повлечет за собой табличный про- просмотр, использующий таблицу хк (х), полученную в первой фазе. Последовательность {xk (х)} этих таблиц поведений, образованных в фазе 1, обычно запоминается на ленте или перфокартах и, следовательно, должна по мере надобности вводиться в оперативную память. Соответствующее поведение запоминается в ячейке <*. Нет Да
20] ОДИН ПОЛЕЗНЫЙ ПРИЕМ 51 Этап 3. Номер рассматриваемою способа и поведение печатаются, образуя одну строку таблицы окончательных результатов. Этап 4. Наличные ресурсы сокращаются на уже рас- распределенное количество а, а число рассматриваемых способов уменьшается на единицу. Этап 5. Если еще остается сколько-нибудь способов, мы возвращаемся к этапу 2. Это требует просмотра некото- некоторой новой таблицы поведений, вложенной в память. Если никаких способов не остается, вычисления прекращаются. На этом заканчивается исследование того, как получается решение для частных значений х и N в динамическом про- программировании. 20. ОДИН ПОЛЕЗНЫЙ ПРИЕМ Заметим, что результаты фазы 1 обрабатываются в порядке обратном их получению. Если имеется запоминающее устрой- устройство на магнитной ленте, обработка легко осуществляется с помощью команд «считывания в обратном направлении». Для машин с ограниченным вспомогательным запоминаю- запоминающим устройством результаты нужно последовательно пер- перфорировать на картах. Здесь мы рекомендуем следующий прием, успеш- /7оле адресов A2 двоичных адресов) Поле данных (J2 двоичнш слов) но применяемый на маши- машине Джонниак. Выберем или изгото- изготовим карту такого формата, Рис- И- который дает возмож- возможность вставить ее в массив в перевернутом виде (т. е. вниз 12-й строкой, которая является первой на большинстве ма- машин) без считывания данных с карты. Например, такая кар- карта, часть стандартной системы ввода машины Джонниак, показана на рис. 11. Когда такая карта перевертывается (так что адрес остается еще в левой половине карты), то сначала читается верхняя строка, а не нижняя. Однако после считывания всех 12 строк те же самые данные записываются в те же ячейки, в которых они появились бы, если бы карта была вставлена обычным образом. Это позволяет нам поме- поместить весь ввод этапа 1 на одну карту, начиная с последней
32 одномерный процессы распределения [гл. i карты (т. е. лицом вниз), достигая при этом желаемой инвер- инверсии расположения для этапа 2. Если требуется хранение карты, то каждой из N вводи- вводимых таблиц этапа 1 должна предшествовать карта переноса (порядок следования обратный), чтобы выделить признак конца таблицы на протяжении этапа 2 вычислений. 21. УСТОЙЧИВОСТЬ Целый ряд очень интересных математических вопросов возникает в связи с использованным нами приближенным ме- методом. Они не только представляют интерес для аналитика, но имеют также первостепенную важность для успешного применения наших численных методов. Все эти вопросы от- относятся к понятию устойчивости. Мы брали уравнение и заменяли его родственным урав- уравнением, в котором максимизация выполнялась по более узкой конечной области значений и рассматриваемые функции вы- вычислялись только в конечном множестве точек. Так как обе эти операции, вообще говоря, вносят ошибки, немедленно возникает вопрос об их величине на каждом шаге, а также о росте этих ошибок при увеличении числа шагов. Задачи этой общей природы были широко исследованы для обыкновенных дифференциальных уравнений и уравнений в частных производных, но для функциональных уравнений динамического программирования было получено очень мало результатов. Мы кратко коснемся этой задачи в главе XII. 22. ПРОЦЕСС ЗАГРУЗКИ СУДНА В качестве первой иллюстрации общих методов, описан- описанных на предшествующих страницах, рассмотрим простой тип задач, которые часто возникают при загрузке судов и упа- упаковке грузов. Допустим, что необходимо загрузить корабль грузом, со- составленным из отдельных предметов различных типов. Так как эти отдельные предметы имеют различные веса и стоимости, возникает задача о том, как загрузить судно ограниченной грузоподъемности грузом наибольшей ценности. С помощью простого видоизменения ситуаций читатель сможет предста- представить себе много вопросов подобного рода.
24] ОБСУЖДЕНИЕ 33 23. МАТЕМАТИЧЕСКАЯ ПОСТАНОВКА ЗАДАЧИ Предположим, что мы имеем судно максимальной грузо- подьемноаи z, груз которого должен состоять из различных количеств предметов TV различных типов. Пусть V( — стоимость отдельного предмета /-го типа, \ wi — вес отдельного предмета /-го типа, > A.31) xt — число отдельных предметов /-го типа, ] взятых для погрузки. Тогда задача определения груза наибольшей ценности есть задача максимизации линейной формы n М*) = S^i О-32) при условиях N 1=1 (b) *, = 0, 1, 2, ...J A.33) Значения {vh wt}, естественно, берутся положительными. 24. ОБСУЖДЕНИЕ Если бы условие A.33) сводилось просто к ограничению* х{ ^ 0, задача была бы совсем несложной и ее решение можно было бы определить следующим образом. Рассмотрим отно- отношение — , i=l, ..., Л/, и пусть а — индекс, для которого- это отношение принимает максимальное значение. Затем вы- выберем только предметы типа а; при этом мы получим макси- максимальную стоимость груза Нетрудно показать, что при наличии условия A.33), кото- которое допускает только дискретное множество значений, пре- предыдущее решение уже не всегда будет правильным. В настоя- настоящее время не существует точного решения для поставленной задачи, имеющего простую аналитическую форму.
54 ОДНОМЕРНЫЕ ПРОЦЕССЫ РАСПРЕДЕЛЕНИЯ [гл. ! Округление решения для задачи с непрерывным измене- изменением переменных до ближайшего целого числа может при- привести к решению, далекому от оптимального. Рассмотрим, например, следующую задачу, включающую три различных типа предметов: z= 100 — максимальная грузоподъемность, <ш1==49, Vy= 20, m2 = 50, г>2= 75, A.35) зд3 = 51, г>3=102. Если бы не условие целочисленности, мы погрузили бы 100 л пс о . 1АП 102 -Fj- я^ 1,96 предметов типа 3 и имели бы стоимость 100*-^т- = = 200. Так как это не разрешается, мы можем подвергнуться соблазну округлить 1,96 до 1 и взягь один предмет типа ^ чтобы покрыть избыточный вес. Это поведение дает цен- ценность 122. Однако настоящий оптимум легко определяется простым перебором; он равен 150 и достигается посредством погрузки двух единиц типа 2. Ввиду такой скрытой природы точного аналитического решения представляет интерес указать простой алгоритм, основанный на предыдущем рассмотрении общих процессов распределения, который быстро дает решение. 25. РЕКУРРЕНТНЫЕ СООТНОШЕНИЯ Для х^0 и N= 1, 2, ... определим функцию fN (z) = max LN (x), A.36) *¦ i ' где максимизация совершается по множеству значений xiy определяемому A.33). Тогда ' " П vl9 A.37) причем [w] обозначает наибольшее целое число, меньшее или равное w. Поступая как в § 10, где можно найти общее рекуррент- рекуррентное соотношение, мы получаем простую формулу fN(?) = max {xNvN-\-fN_x(z — xNwN))\ XN
26] ОБСУЖДЕНИЕ ВЫЧИСЛИТЕЛЬНОЙ ПРОЦЕДУРЫ 55 здесь xN пробегает значения из множества О, 1, 2, ...>|^|. 0-38) В следующем параграфе мы опишем программу, употреб- употребляемую для вычисления как последовательности {fN(z)}> так и оптимального выбора х^ 26. ОБСУЖДЕНИЕ ВЫЧИСЛИТЕЛЬНОЙ ПРОЦЕДУРЫ Основные вычисления могут быть выражены в 25 коман- командах. Поскольку выполнение этого небольшого числа команд повторяется тысячи раз, можно с уверенностью сказать, что из миллисекунд складываются секунды. Фактически, с точ- точностью до времени ввода и вывода, все время вычислений, по существу, определяется этими 25 командами. Они вы- выполняют: (a) оценку v{xt для выбора груза в xt предметов j-ro типа; (b) просмотр таблицы для оптимального дохода fi-i (z — wixd> получаемого от / — 1 предметов предшествую- предшествующего типа при оставшейся емкости (z — w^i)', (c) максимизацию (а)-|~(Ь) по всем неотрицательным це- целым х, не превосходящим наибольшего целого числа, содер- содержащегося в z\w-v Вычислительное время зависит от распределения весов wt. Однако можно указать следующую полезную оценку. Если N—число типов предметов, z — максимальный до- допустимый вес грузов, w — среднее из wi9 0,005 — время, за- затрачиваемое на вычисление xivi-\-fn_x(z — xtwj) при дан- данных значениях xif vb wb z и fn_h то вычислительное время = 0,005 [-=-) zN секунд. \2w I Время ввода и вывода является функцией количества требуемой информации. Печатание занимает около одной минуты на предмет; перфорация требует такого же количе- количества времени. Однако необходимо печатать лишь оконча- окончательное оптимальное поведение, а отперфорированные дан- данные можно записывать на барабан, тратя на это ничтожное время.
56 ОДНОМЕРНЫЕ ПРОЦЕССЫ РАСПРЕДЕЛЕНИЯ [гл. т Блок-схема вычислительной программы приведена на рис. 12. Таблица 1.2 содержит численные данные для небольшой задачи, включающей 8 типов предметов и судно грузоподъ- грузоподъемностью 100 единиц. Таблица 1.3 дает оптимальное решение ввести таблицы Е Определить наибольшее целое =« Максилгизироеать. д Xi), ге Zi^ /ранигпь f\(z) и максимизирующее fo =0. Hem Да Печатать таблицы fiB) И Xi'S ff Равно ли i суммарному числу предметов- Да Нет I + 1' Рис. 12. Блок-схема программы для численного реше- решения задачи о загр>зке корабля. для этой задачи. На рис. 13 мы видим, как оптимальный доход зависит от грузоподъемности. Здесь же показано, на- насколько неправильно может вести себя оптимальное поведе- поведение при переходе от одного значения грузоподъемности к дру- другому. Это—результат ограничения целочисленными решениями. Совершенствование вычислительных машин идет так быстро» что к тому моменту, когда эта книга выйдет из печати, ука- указанные выше значения затрат времени на операции могут показаться несколько старомодными. Читатель, знакомый со
271 НАДЕЖНОСТЬ МНОГОКОМПОНЕНТНЫХ СХЕМ 57 свойствами самых последних цифровых вычислительных ма- машин, может легко внести необходимые изменения. Таблица 1.2 Номер типа • 1 2 3 4 Вес 20 18 14 12 Значение груза 72 60 40 27 Номер типа 5 6 7 8 Вес 10 16 22 24 Значение груза 20 50 85 96 Таблица 1.3 z 100 95 91 89 87 85 83 81 384 373 351 340 328 317 308 297 Число погруженных предметов 1-то типа у J у О V- Q v 1 л7 = о л g — 1 Х7 = 4 xz =1 д'8 = 3 х = 1 х- = 1 х 2 хъ = 1 х[ = 3 л-5 = 1 л;=1 xs = 2 27. НАДЕЖНОСТЬ МНОГОКОМПОНЕНТНЫХ СХЕМ Обратимся теперь к рассмотрению задачи из совершенно другой области. Мы выбираем эту задачу, чтобы проиллю- проиллюстрировать процесс распределения, в котором функция оценки не является аддитивной. Одной из основных задач, возникающих при конструиро- конструировании любого узла сложной аппаратуры, является задача на- надежности. Вопрос приобретает чрезвычайно серьезный харак- характер в связи с производством таких устройств, как, например, цифровая вычислительная машина. Одно неверное срабаты- срабатывание какой-либо из тысяч электронных ламп, одна ошибка в какой-либо из миллионов операций — и все вычисления идут насмарку.
58 ОДНОМЕРНЫЕ ПРОЦЕССЫ РАСПРЕДЕЛЕНИЯ [ГЛ. I Во многих случаях задачу можно поставить как задачу, включающую построение надежного устройства из менее на- надежных компонент. Стандартный путь решения опирается на I 500 | 400 § 300 \a I wo 0 70 20 30 40 50 60 7O 60 90 700 z - грузоподъемность судна I 5 h 1 . . ппп г О 10 20 30 W 50 60 70 60 90 100 г - грузоподъемность судна Рис. 13. Результаты численного решения для небольшой задачи о загрузке корабля, вмещающего восемь типов пред- предметов с заданными весами и ценностями и судно грузо- грузоподъемностью в 100 единиц. возможность дублирования компонент. Для некоторых типов простых схем получающуюся математическую задачу, как мы увидим, можно трактовать с помощью методов динамиче- динамического программирования.
28] ДУБЛИРОВАНИЕ КОМПОНЕНТ 59 28. НАДЕЖНОСТЬ НА ОСНОВЕ ДУБЛИРОВАНИЯ КОМПОНЕНТ Допустим, что устройство, которое мы хотим сконструи- сконструировать, можно считать состоящим из некоторого числа после- последовательных ступеней (рис. 14). Надежность устройства будет определяться как ве- Ступень 7 С п/у пень 2 роятность его безотказной I работы. Принимая во вни- Ступень? Ступень2 Ступень N мание последовательное рас- рнс 14. положение, эту полную ве- вероятность можно взягь равной произведению вероятностей безотказной работы отдельных ступеней. Если надежность слишком мала для эффективного использования, мы можем исправить положение, размещая в каждой ступени параллельно компоненты-дублеры. В результате структурная схема устрой- устройства будет выглядеть так, как это показано на рис. 15. Мы предполагаем, что в каж- каждой своей ступени устройство снаб- снабжено переключательными схемами, которые обладают свойством под- подключения новой компоненты в схему, когда старая компонента отказывает. Надежность какой- либо отдельной ступени будет те- теперь зависеть довольно сложным образом от числа параллельно дей- действующих компонент и типа исполь- используемой переключательной схемы. Практические ограничения по стоимости, весу, объему и, возможно, дополнительные ошибки, вносимые переключа- переключательными схемами, препятствуют использованию в каждой ступени сколь угодно большого числа компонент-дублеров и тем самым делают невозможной совершенно безотказную работу. Задача, которую мы хотим здесь рассмотреть, заключается в определении наиболее эффективного решения, использующего идею дублирования, однако с ограничениями вышеуказанного шла. Рис.
60 ОДНОМЕРНЫЕ ПРОЦЕССЫ РАСПРЕДЕЛЕНИЯ [ГЛ. 1 Пока мы исследуем только простой частный случай. Более сложная модель будет рассмотрена в главе II в связи с дву- двумерными процессами распределения. 29. МАТЕМАТИЧЕСКАЯ МОДЕЛЬ Для у=1, ..., N обозначим 1 + Шу—число компонент-д)блеров, используемых в /*-й ступени, где ту = 0, 1, ...; A.39) yj(nij) — вероятность безотказной работы у-й сту- ступени, когда в ней используется 1 + Щ компонент. Мы будем предполагать, что функции ^j{mj) нам заданы; их конкретный вид нас интересовать не будет. Надежность N-ступенчатого устройства тогда дается вы- выражением j)- С1-40) Пусть Cj — стоимость одной компоненты в /-й ступени. Если не учитывать стоимость переключательных систем, то задача, которую мы хотим решить, есть задача максими- максимизации /?v при условиях (a) Zmjcj^c, I (L4l) (b) mj = 0, 1,... . При записи этих условий мы будем предполагать, что в каждой ступени должна быть обязательно использована по крайней мере одна компонента. Обозначим через fN(c) значениеpN, определенное в A.40), даваемое некоторым оптимальным поведением. Тогда для fN (с) = max [?N(mN)fN_ { (c—mNcN)], A.42) mN где mN удовлетворяет соотношениям (a) mN = 0, 1, ..., 1 (b) "
30] ПАРАЛЛЕЛЬНЫЕ ОПЕРАЦИИ 61 Для N= 1 мы имеем Ш AЛ4) В § 27 главы II будет приведено подробное обсуждение численного решения в случае, когда учитываются также и весовые ограничения. 30. ПАРАЛЛЕЛЬНЫЕ ОПЕРАЦИИ Если имеются две цифровые вычислительные машины или если доступна одна из более современных машин, допускаю- допускающая параллельные операции, которые могут выполняться одновременно, предшествующие процедуры можно существен- существенно улучшить. Допустим, что мы хотим максимизировать функцию в области ^l + ...+ ^ + ^4_1 + ... + ^27V=:Ar> О-46) где л^^О. Положим XN+\ (,.47) И fN (У^ = max ^l + + ^ Функции /a^CVi) и Ад'СУз) могут быть вычислены рекурсивно посредством рассмотренного выше алгоритма. Как только это сделано, мы можем определить решение для первоначальной задачи, максимизируя fN(y\)-\-hN{y^) в области значений У1-\-Уъ = х> У\> >2^0. Главное заключается в том, что /м(у{) и hN(y.2) можно вычислять одновременно. Этот процесс, конечно, можно про- продолжать далее в зависимости ог имеющихся в распоряжении приспособлений параллельного действия, емкости памяти а т. д.
62 ОДНОМЕРНЫЕ ПРОЦЕССЫ РАСПРЕДЕЛЕНИЯ |>Л. I Если мы заранее знаем, что оптимальные выборы у{ и у>2 лежат в окрестности у, мы можем почти вдвое сократить требования к памяти, а также полное необходимое вычисли- вычислительное время. Это — очень важное замечание для нашей даль- дальнейшей работы, когда проблема емкости памяти приобретает особую остроту. Если все gt(x) одинаковы и требуется решение только частных задач, вычислительное время можно уменьшить весьма основательно. Так, чтобы вычислить/1024(jc), мы будем писать: fmi(x)= max 1/шО)+/шСJ)]> и т. д. Функция /1024 может быть поэтому вычислена в 10 ша- шагов. 31. ЗАКЛЮЧЕНИЕ Цель этой главы состояла в том, чтобы ввести читателя в методологию динамического программирования, затрагивая как вычислительный, так и теоретический аспекты. Для того чтобы познакомить читателя с этапами, которые имеют место при численном решении задач оптимизации на основе метода функциональных уравнений, мы подробно рассмотрели две частные задачи — общую задачу распределения ресурсов и затем характерный процесс загрузки судна. Вывод, который мы можем сделать из эюго анализа, за- заключается в том, что задача определения максимума функции A.50) на множестве значений хь определенном соотношениями N (a) 2*i = *, x^G 1=1 и (L51) есть обычная задача, легко и красиво решаемая посредством алгоритма, доставляемого динамическим программированием.
КОММЕНТАРИИ И БИБЛИОГРАФИЯ 63 Необходимое вычислительное время, но существу, прямо пропорционально N Для большинства задач этого типа время для каждого шага будет порядка секунды. КОММЕНТАРИИ И БИБЛИОГРАФИЯ § 1. Детальное изложение основ теории динамического про- программирования читатель может найти в книге: R. Bellman, Dynamic Programming, Princeton University Press, Princeton, New Jersey, 1957 [Русский перевод: Р. Б е л л м а н, Динамическое программирование, ИЛ, I960]. Обсуждение связи применяемых здесь идей и классических идей итерации и непрерывных групп преобразований приведено в книге: R. Bellman, Adaptive Control Processes: A. Guided Tour, Prin- Princeton University Press, Princeton, New Jersey, 1961 [Русский перевод: Р. Б ё л л м а н, Процессы регулирования с адапта- адаптацией, изд-во «Наука», 1964]. С экономическими исследованиями и работами в области иссле- исследования операций, лежащими в основе задач, рассматриваемых нами в первых трех главах, можно познакомиться по книгам: К. J. А г г о w, S. К а г 1 i n and H. Scarf, Studies in the Mathe- Mathematical Theory of Inventory and Production, Stanford University Press, Stanford, California, 1958. R. Dorfman, P. A. Samuelson and R. S о 1 о w, Linear Prog- Programming and Economic Analysis, McGraw-Hill Book Co., Inc., New York, 1958. D. Gale, The Theory of Linear Economic Models, McGraw-Hill Book Co., Inc., New York, 1960 [русский перевод: Д. Гей л, Теория линейных экономических моделей, ИЛ, 1963). С. С. Н о It, F. М о d i g 1 i a n i, J. M u t h, H. S i m о n, Planning Production, Inventories and Work Force, Prentice Hall, Inc., Eng- lewood Cliffs, New Jersey, 1960. R. A. Howard, Dynamic Programming and Markov Processes, John Wiley and Sons, New York, 1960. [Русский перевод: P. Ховард, Динамическое программирование и марковские про- процессы, «Сов. радио», 1964.] S. К а г 1 i n, Mathematical Methods and Theory in Games, Prog- Programming and Economics, Addison-Wesley Publishing Co., Rea- Reading, Massachusetts, 1959. [Русский перевод: С. Карлин, Мате- Математические методы в теории игр, программировании и эконо- экономике, «Мир», 1964.] A. Kaufman, Methodes et Modeles de la Recherche Operation- nelle, Dunod, Paris, 1959. P. Rosenstiehl and A. G h о u i 1 a-H о u r i, Les choix econo- miques, decisions sequentielles et simulation, Dunod, Paris, 1960.
64 ОДНОМЕРНЫЕ ПРОЦЕССЫ РАСПРЕДЕЛЕНИЯ [гл. Т P. A. S a m u е 1 ь о п, I'ouiulations of Economic Anahsis, Harvard University Press, Cambridge, Massachusetts, 1947. § 4. Некоторые дальнейшие трудности при построении моде- моделей рассмотрены в работах: R. Bellman, С. Clark, С. Craft, D. Malcolm and F. R i c- c i a r d i, On the construction of a multi-person, multi-stage bu- business game, Operations Research, vol. 5, 1957, pp. 469—503. R. Bellman and P. Brock, On the concepts of a problem and problem-solving, Amer. Math. Monthly, vol. 67, I960, pp. 119—134. § 10. Аналитический подход к этой задаче дан в приложении IV, где коротко изложены некоторые результаты Беллмана и Кармна. Там же дана ссылка на др\т\ю работ} Каруша. § 14. Эта работа по численном) решению функциональных уравнений, полученных из принципа оптимальности, была начата авторами в 1956 году и продолжена в ряде других работ (в основ- основном неопубликованных). Несколько работ, на которые мы б\дсм часто ссылаться, были опубликованы. Первой из них была статья: R. Bellman and S. D r e \ f u s, On the computational solution of dynamic programming processes — I: on a tactical air warfare model of Mengel, Operations Research, vol. 6, 1958, pp. 65—78. § 27. Эти результаты изложены в статье: R. Bellman and S. Dreyfus, Dynamic programming and the reliability of multicomponent devices, Operations Research, vol. 6, 1958, pp. 200-206. Некоторые дальнейшие результаты, а также многочисленные ссылки даны в работах: A. J. М а у n e, Some reliability models of production lines with special reference to computer operation and scheduling, Opera- Operations Research Quarterly, vol. 11, 1960, pp. 16—30. D. S. S to Пег, RAND Publications on Reliability, The RAND Corporation, Research Memorandum RM-2613, 1960. A. A. M u 11 i n, The present theory of switching and some of its future trends, Industrial Math. Jour., vol. 10, 1959—1960, pp. 24— 44. S. K. Stein, The mathematician as an explorer, Scientific Ameri- American, May 1961, p. 148 ff. Задачи, рассмотренные в §§ 22 и 27, можно трактовать как задачи целочисленного линейного и нелинейного программирования. Хотя Гомори и другими авторами было достигнуто некоторое про- продвижение в направлении решения этих задач с помощью симплекс-ме- симплекс-метода, многие из основных задач остались нерешенными. См. об этом G. В. D a n t z i g, On the significance of solving linear programming problems with some integer variables. Econometrica, vol. 28 1960, pp. 30—44. В работе можно найти другие ссылки.
КОММЕНТАРИИ И БИБЛИОГРАФИЯ 65 Некоторые другие применения методов динамического програм- программирования, представляющие интерес, можно найти в работах: W. A. Hall and N. В u r a s, The dynamic programming approach to water resources development, Jour. Geophysical Research, vol. 66, 1961, pp. 517—520. J. de G u e n i n, Optimum distribution of effort: an extension of the Koopman basic theory, Operations Research, vol. 9, 1961, pp. 1-7. На страницах журналов Management Science, Journal of the Society for Industrial and Ap- Applied Mathematics, Operations Research Quarterly, Journal of the Operations Research Society of America и Revue Francaise de Recherche Operationnelle, так же как и других журналов, издаваемых обществами по иссле- исследованию операций других стран, можно найти большое количество публикаций о других приложениях динамического программиро- программирования. Интересное сообщение о решении задач распределения, где используются довольно тонкие математические средства, дано в работе: I. E. D u b i n s and E. H. S p a n i e r, How to cut a cake fairly, Amer. Math. Monthly, vol. 68, 1961, pp. 1—17. ДОПОЛНИТЕЛЬНАЯ ЛИТЕРАТУРА Современное состояние теории линейного, целочисленного и выпуклого программирования детально освещено в книге G. В. D а п t z i g, Linear programming and extensions, Princeton Univ. Press, 1963. (Готовится русский перевод.) 3 P. Беллмап, С. Дрейфус
ГЛАВА II МНОГОМЕРНЫЕ ПРОЦЕССЫ РАСПРЕДЕЛЕНИЯ 1. ВВЕДЕНИЕ В предыдущей главе мы нашли оптимальные политики для некоторых процессов распределения, когда в наличии имелся лишь один тип ресурсов и на его использование было наложено только одно ограничение. В этой главе мы хотим рассмотреть ряд более сложных задач, возникающих из более реалистических описаний экономических процессов. Как мы увидим, основной формальный аппарат динами- динамического программирования переносится на эти случаи без изменения. Тем не менее, на пути стандартного решения, полученного в главе I, возникают значительные трудности. Чтобы преодолеть эти трудности частично или полностью, мы применим ряд мощных и тонких математических приемов. Наиболее мощный из них — метод лагранжевых множите- множителей. Хотя обычно считают, что множители тесно связаны с классическим анализом, мы покажем, что это не единствен- единственная возможность их применения. Синтез метода функциональ- функциональных уравнений динамического программирования и метода множителей Лагранжа позволяет разложить сложный процесс на более простые части. Это разложение делает разреши- разрешимыми весьма общие классы задач оптимизации. Мы используем также различные формы метода последо- последовательных приближений. Одно из ценных качеств теории динамического программирования заключается в том, что метод последовательных приближений можно применять как непосредственно к получающимся функциональным уравне- уравнениям, так и для определения оптимальных политик. Послед-
2] РАСПРЕДЕЛЕНИЕ ДЛЯ ДВУХ ТИПОВ РЕСУРСОВ 67 ний прием носи г название «приближения в пространстве политик». Он всегда дает если не монотонную сходимость, то по крайней мере монотонную аппроксимацию. Классиче- Классическим применением метода последовательных приближений является его приложение к функциональным уравнениям. Оно совсем не обязательно приводит к монотонной сходимости. Как и в главе I, мы приведем большое количество чис- численных результатов. Основная часть результатов этой главы базируется на экспериментах, и поэтому бессмысленно счи- считать их окончательными или оптимальными. Как читатель убедится сам, существуют возможности для важных исследо- исследований в этих областях, равно как и необходимость в них. 2. ПРОЦЕСС РАСПРЕДЕЛЕНИЯ ПРИ НАЛИЧИИ ДВУХ ТИПОВ РЕСУРСОВ Прямым обобщением простого процесса распределения, рассмотренного в § 2 главы I, является процесс разделения двух различных типов ресурсов на части, предназначенные для использования в ряде независимых технологических про- процессов. Пусть два типа ресурсов имеются соответственно в коли- количествах х и у, a xt и yi — количества этих ресурсов, вы- выделенные для i-ro процесса. Как и раньше, предположим, что задана функция полезности gi (Х[, yi) — доход от /-го процесса, если на него отпущено xt ресурсов 1-го типа и yi — 2-го гипа. B-1) Стоящая перед нами математическая задача выбора наиболее эффективного использования ресурсов сводится к максими- максимизации функции 2N переменных R {хь хъ..., xN\ уь уь..., yN) = 2 ft (**> Уд B-2> при ограничениях N (а) 2*1 = *» N B.3)
68 МНОГОМЕРНЫЕ ПРОЦЕССЫ РАСПРЕДЕЛЕНИЯ [ГЛ. Н Мы назовем ситуацию, когда в наличии имеются два раз- различных вида ресурсов, двумерным процессом распределения (независимо ог величины Л/). Как будет показано, численное решение этой задачи основывается на вычислении последова- последовательностей функций двух переменных. 3. РЕКУРРЕНТНЫЕ СООТНОШЕНИЯ Идя по тому же пути, что и в первой главе, введем по- последовательность функций {/tv(^, у)}'- /n (х, У) = max RN (xly хь ..., xN\ yb уь ..., yN\ B.4) {x, у) где максимум берется по области значений xt, yh определя- определяемой условиями B.3). Здесь N принимает значения 1, 2,...; х и у — любые неотрицательные числа. Для N=1 имеем равенство AC*. y) = gi(x, У)> B.5) а для Л/^2 — рекуррентное соотношение fs {*> У)= max max [gN (xN) yN) -f JrfN_{(x — xNi y—yN)\ B.6) которое является прямым следствием принципа оптимальности. Прежде чем исследовать вычислительную осуществимость этого алгоритма, обсудим другие задачи, которые приводят к функциям двух переменных. 4. ПРОЦЕСС РАСПРЕДЕЛЕНИЯ С ДВУМЯ ТИПАМИ ОГРАНИЧЕНИЙ Во многих случаях мы встречаемся с задачей распределе- распределения одного типа ресурсов при двух видах ограничений. В за- задаче о загрузке судна это, например, ограничения, налагаемые на вес и объем. Такой тип задач можно рассматривать как частный случай предыдущей задачи, в которой xt и у. свя- связаны соотношением у{ = hi (jcf). Аналитическая задача в этом случае состоит в нахожде- нахождении максимума функции B.7)
5] РЕКУРРЕНТНЫЕ СООТНОШЕНИЯ при ограничениях N (Ь) 5>*С* (с) Предположив, что a,- (jc,-) и ?,• (л:,-) — монотонно возрастаю- возрастающие функции хь стремящиеся к оо, когда х( -> оо, мы могли бы при желании сделать замену переменных, переводящую а{ (х() в х{ при условии, что х{ изменяется непрерывно. Если же х{ принимает дискретное множество значений, например О, 1, 2,..., такая замена переменных невозможна. Заметим, что ограничения B.3), выраженные равенствами, мы заменили неравенствами. До тех пор, пока речь идет и о процессе и о численном решении, это несущественное изме- изменение позволяет избежать рассмотрения некоторых математи- математических тонкостей. б. РЕКУРРЕНТНЫЕ СООТНОШЕНИЯ Следуя подходу, намеченному в § 3, положим: /n (.*, у) = max [ft (xx) -f ft (x2) ~f... + gN (xN)]y B.9)' где максимум берется по всем тем xi9 которые удовлетво-* ряют условиям B.8, а, Ь, с). Имеем равенство А(х,У)= max gl(x0 и общее рекуррентное соотношение вида , у)= max [gN {xN) + BЛ1)
70 МНОГОМЕРНЫЕ ПРОЦЕССЫ РАСПРЕДЕЛЕНИЯ [ГЛ. И 6. ВЫЧИСЛИТЕЛЬНЫЕ АСПЕКТЫ Рекуррентные соотношения, которые мы получили в пре- предыдущих параграфах, можно использовать для нахождения численного решения способом, почти аналогичным описанному в главе I. Хотя качественно метод абсолютно не будет отли- отличаться от развитого выше, мы сталкиваемся с существенными количественными изменениями, когда мы исследуем вычисли- вычислительный процесс с точки зрения требований к памяти, т. е. с точки зрения хранения данных и времени вычислений. Эта теория являет собой прекрасный пример того классического правила, что большая количественная разница может породить значительное качественное отличие. При вычислениях, приве- приведенных в главе I, мы требовали хранения значений функции одной переменной, /n(x) в точках сетки {&Д}. Построим в том же духе приближение для B.11). Чтобы определить функцию /х(х, у), например, в области О^дг^Ж, 0^: ^у^М, договоримся, как и раньше, вычислять ее значения только в узлах сетки, скажем, при x = kk и j/ = /A, k, /== = 0, 1,..., М. Заметим, что, тогда как раньше для задания /дг_1 (х) нам нужно было хранить Ж -j— 1 значений, теперь для запомина- запоминания информации о функции /н—\(х, у) нам необходимо хра- хранить уже (М-f-lJ значений. Если 0^x^:1, O^y^l — наша основная область, а для х и у выбран шаг в 0,01, то это означает, что вместо 102 точек нам понадобится уже 104 точек. В действительности увеличение будет по крайней мере в три раза больше, так как одновременно с хранением зна- значений /tv_i(jc, у) мы должны вычислять новую функцию /, У) и политику xN = xN(x, у). 7. ОБСУЖДЕНИЕ Из сказанного выше ясно, что по мере увеличения числа типов ресурсов и числа ограничений увеличивается количе- количество независимых переменных функции дохода. Возможность непосредственного табулирования этих функций многих пере- переменных сильно ограничена из-за огромного увеличения тре- требований к памяти, которые не могут быть удовлетворены современными машинами, а в некоторых случаях даже маши- машинами ближайшего будущего.
10] ДИНАМИЧЕСКОЕ ПРОГРАММИРОВАНИЕ 71 Прежде чем перейти к описанию различных путей исполь- использования математической изобретательности для разрешения ди- дилеммы размерности в специально выбранных случаях, изло- изложим типичное применение описанного выше метода. Задача, которую мы рассматриваем ниже, иллюстрирует также способ математического рассмотрения процессов, вклю- включающих случайные эффекты. 8. ЗАДАЧА О ЗАПАСНЫХ ЧАСТЯХ Допустим, что мы собираемся отправить транспортный самолет на отдаленную базу с грузом запасных частей для самолетов. Пусть имеется N типов запасных частей и с каж- каждым из них связан определенный убыток, который терпит база, если частей этого типа не окажется в нужный момент на складе. Предположим далее, чго спрос на каждый тип запасных частей описывается известным распределением Пуас- Пуассона. Какое количество запасных частей каждого типа сле- следует погрузить на самолет, чтобы минимизировать убытки базы, обусловленные нехваткой запчастей, при заданных огра- ограничениях на вес W и объем 5 груза? Это — типичная задача, встречающаяся при изучении про- процессов замены оборудования и управления запасами. 9. СТОХАСТИЧЕСКИЕ АСПЕКТЫ Заметим, что мы впервые столкнулись с задачей с эле- элементами случайности. Как мы увидим, в случаях минимизации некоторого среднего убытка постановка задачи в терминах динамического программирования, а также ее численное ре- решение идут по тому же пути, что и раньше." Одно из больших преимуществ методов динамического программирования состоит в том, что к детерминированным и стохастическим процессам можно применять один и тот же подход. 10. ПОДХОД С ТОЧКИ ЗРЕНИЯ ДИНАМИЧЕСКОГО ПРОГРАММИРОВАНИЯ Пусть w( обозначает вес детали 1-го типа, st — ее объем, X; — среднее в распределении Пуассона, описывающем спрос на этот вид запасных частей, и ci — убытки вследствие
72 МНОГОМЕРНЫЕ ПРОЦЕССЫ РАСПРЕДЕЛЕНИЯ [гЛ. II неудовлетворения спроса на одну деталь 1-го типа. Наконец, предположим, что нам желательно определить такую ком- комплектность, при которой минимизируются ожидаемые убытки при определенных ограничениях на вес и объем. Если xt — количество деталей i-ro типа, которое берется на борт, и P(z) — вероятность потребности в z деталях, то ожидаемый от неудовлетворения спроса убыток будет равен ct S (г-хдР(г). B.12) Эта формула имеет место независимо от вида распределения спроса. Мы проведем расчет для распределения Пуассона, так как этот тип распределения часто является превосход- превосходным приближением для наблюдаемых распределений. Кроме того, параметр X этого распределения может быть оценен довольно легко. Если P(z, Х4-) — распределение Пуассона для 1-го типа деталей, то математическое ожидание суммарного убытка равно N оо [ ? l B.13) Математическая, задача состоит в минимизации En по всем xiy удовлетворяющим трем условиям: (a) Х; = 0, 1, 2,..., (b) ^х^^т, B.14) (с) Определим теперь fk (w\ s) как убыток, связанный с оптимальным выбором деталей первых k типов; грузоподъ- грузоподъемность самолета ограничена величиной w\ а объем — вели- величиной <?'; w' и s' могут меняться соответственно в интервалах 0 ^ wr ^5 w и 0 ^ ' ^
11] ВЫЧИСЛИТЕЛЬНАЯ ПРОЦЕДУРА 73- Основное рекуррентное соотношение тогда примет вид fk {w\ s') = min \ck |] (z - xk) P (z, \k) + +Л-1 (^ - -№> s' ~ xjj], B.15) где xk изменяется в области {||| |?|} B.16) Как и раньше, [х] обозначает наибольшее целое число, не превосходящее х. В следующем параграфе мы разберем' решение уравне- уравнения B.15) при ограничениях B.14). 11. ВЫЧИСЛИТЕЛЬНАЯ ПРОЦЕДУРА Поскольку учитывается каждый тип деталей, начальный шаг состоит в вычислении ожидаемого убытка от включения в комплект 0, 1, 2, ... деталей этого типа. Таблица ожидае- ожидаемых убытков определяется допущением о том, что распреде- распределение является пуассоновским, и знанием средней величины спроса и убытков от отсутствия одной детали. При рассмот- рассмотрении разных политик определяют, обращаясь к таблице, непосредственный убыток от каждого выбора. Этот убыток прибавляется к ожидаемому убытку, связанному с оставши- оставшимися типами деталей, для того чтобы найти суммарный убы- юк от применения данной политики. Затем на этой основе выбирается минимизирующая политика. Были запрограммированы как одномерный, так и двумер- двумерный случаи. В первом случае рассматривалось только огра- ограничение на вес. На расчет для одной детали расходовалось около одной минуты, когда полная весовая нагрузка состав- составляла 1000 фунтов, а в качестве весов деталей брались не- небольшие целые числа. В двумерной формулировке налагались как весовые, так и объемные ограничения. Верхняя граница, равная 30 как для веса, так и для объема, дала в результате сетку в 900 точек, и снова вычисление для одной детали потребовало около одной минуты. Ограничение в 30 значе- значений для каждого измерения означает, что малые детали следует укрупнять в большие группы (как ато обычно
74 МНОГОМЕРНЫЕ ПРОЦЕССЫ РАСПРЕДЕЛЕНИЯ [ГЛ. II и делается на практике), для того чтобы сделать осмысленным расчет. Граница в 30 могла бы быть увеличена до 100 при имеющемся объеме памяти; вычисления потребовали бы тогда примерно в десять раз больше времени. Число «десять» получается из отношения 1002/302. 12. ПРИМЕР В этом параграфе приводятся некоторые типичные результаты. Они касаются оптимальной загрузки деталями 25 26 27 28 29 30 9 8 7 6 5 4 3 2 1 0 120 120 120 120 120 120 120 120 120 120 ->—^ 120 120 120 120 120 120 120 120 120 120 \ \ // 116,1 116,1 116,1 116,1 116,1 116,1 120,0 120,0 ,2 90,6 \ 90,6 \91,2 \ \ \ \ 116 116,1 Щ1 116,1 120,0 120,0 90,5 90,5 90,6 91,2 \91,2 }92,0 Щ7 \ > 116 у 116,1 120,0 120,0 69,6 89,8 90,5 91,2 91,2 92,0 92,7 93,7 \94,д у5,1 \ \ N 120,0 88,8 89,7 89,8 90,6 912 92,0 92,0 93,5 94,3 95,1 s—•— \ 88,8 88,8 89,8 90,5 91,2 92,0 92,0 93,5 94,3 95,1 ^~ ' 30 29 28 27 26 25 24 23 22 21 0 12 3 4 5 Объем Рис. 16. Части таблицы значений функции /10(^, s), дающей минимальные издержки, связанные с комплек- комплектом веса w и объема s, когда учтены все 10 типов деталей. десяти типов. Ожидаемый спрос на каждый тип равен четы- четырем деталям, а величина штрафа за нехватку детали любого типа равна трем. Значения весов и объемов показаны в таблице 2Д.
12] ПРИМЕР 75 На рис. 16 дана часть таблицы функции f\0(w, s) двух переменных, представляющей собой минимальный убыток, Таблица 2.1 Объем и вес предметов разного типа Тип предмета 1 2 3 4 5 Вес 3 5 2 5 6 Объем 5 4 7 4 6 Тип предмета 6 7 8 9 10 Вес 2 4 7 5 3 Объем 2 5 7 3 4 связанный с комплектом весом w и объемом s, когда учтены все 10 типов деталей. 24 25 26 27 28 29 30 д 8 7 6 ^ 5 3 2 1 О Рис. п и 0 О 0 О 0 О О О О О 17. дающей деталей \ О О О О О О 0 О О 1 > 0 О О О 0 О О О 2 ч О О О 0 О О О 3 Объем Части V ; \ / \ ; V 1 V ;\ О О ) О 0 \ 4 5 1 2 1 1 1 2 \ \ ) С \ таблицы значений оптимальное число типа 10 1 2 2 1 1 1 2 1 1 1 \ \ 2 1 2 0 1 1 г 1 1 1 О О 2 1 1 1 1 0 1 1 1 1 0 О О функции включаемых при весовом и ниях (wy S). в объемном 2 2 1 1 1 0 1 1 1 1 О О О —-«—- 30 29 28 27 26 25 24 23 22 21 20 18 19 xl0 (wf s), комплект ограниче- На рис. 17 приведена политика, связанная с данными рис. 16. Каждое из чисел в кусках таблицы на рис. 17
76 МНОГОМЕРНЫЕ ПРОЦЕССЫ РАСПРЕДЕЛЕНИЯ [ГЛ. tt означает оптимальное число включаемых в комплект деталей типа 10 при весовом и объемном ограничениях (w, s). Таблица 2.2 Решение задачи Тип пред- предметов 10 9 8 7 6 5 4 3 2 1 Вес 3 5 7 4 2 6 5 2 5 3 Объем 4 3 7 5 2 6 4 7 4 5 Число включае- включаемых в комп- комплект деталей 2 1 0 0 3 0 1 0 1 1 Стоимость 5,0 8,1 12,0 12,0 2,6 12,0 18,1 12,0 8,1 8,1 Накоплен- Накопленная стои- стоимость 5,0 13,1 25,1 37,1 39,7 51,7 59,8 71,8 79,9 88,0 Остаток веса 24 19 19 19 13 13 8 8 3 0 Остаток объема 22 19 19 19 13 13 8 9 5 0 Таблица 2.2 воспроизводит конечную печать результатов этапа 2 вычислений (см. § 19 главы I) и дает решение задачи. 13. МНОЖИТЕЛЬ ЛАГРАНЖА Обсуждение вопроса о множителе Лагранжа мы начнем с описания того, как он появляется в задачах анализа, свя- связанных с разысканием максимума функции нескольких пере- переменных при наличии ограничений. Как мы увидим дальше, метод имеет простое геометрическое происхождение и является, таким образом, гораздо более общим. Чтобы свести к минимуму математические детали, мы бу- будем рассматривать задачу отыскания максимума функции двух переменных F (х, у) по всем точкам (лг, у), лежащим на кривой G(x, y) = 0. Действуя формально, обозначим че- через (хо> у0) точку экстремума и положим X = XQ 4- B.17) где s и t — вещественные параметры, а е — бесконечно малая. Тогда условие того, что точка (х0, у0) дает экстремум,
13] МНОЖИТЕЛЬ ЛАГРЛНЖА 77 приводит, как обычно, к соотношению s^4-t— = 0 дх0 ' ду0 ' B.18) а условие того, что точка (хо,уо) лежит на кривой О(х,у) = 0, аналогично приводит к соотношению s дх0 ^- = 0. B.19) Поскольку эти два уравнения должны выполняться для всех s и t, имеет место равенство dF dF дх0 ду0 = 0. B.20) dG cKl дх0 ду0 Отсюда следует, что существует такая величина X, что имеют место два совместных уравнения dF B.21) Но они в точности совпадают с вариационными уравне- уравнениями, которые мы получили бы, если бы разыскивали эк- экстремальные точки новой функции Н(х, y) = F (х, у) + \О(х, у), B.22) не принимая во внимание ограничения G(x, y) = 0. Параметр X называется параметром Лагранжа. Чтобы определить параметр X, мы поступаем следующим образом*). Из B.21) находим значения jc0 и у0 через X, а затем используем соотношение G(x, y) = 0 для определе- определения X. В отдельных благоприятных случаях этот метод рабо- работает хорошо. Но в общем мы сталкиваемся здесь со многими трудностями. Нетрудно видеть, что этот метод можно использовать при решении задачи отыскания максимума функции F (xv х.ь ... при ограничениях Gt (х{, хь ..., х2\) = 0, /=1,2,... *) См. обсуждение конкретного примера в § 5 главы I.
78 МНОГОМЕРНЫЕ ПРОЦЕССЫ РАСПРЕДЕЛЕНИЯ [ГЛ. II 14. ГЕОМЕТРИЧЕСКОЕ ПРОИСХОЖДЕНИЕ В предшествующем параграфе мы вкратце описали, каким образом появляется множитель Лагранжа при изучении мето- методами анализа вариационных задач с непрерывно меняющимися независимыми переменными. Поскольку мы хотим рассматри- рассматривать более общие вариационные задачи, важно дать более широкое толкование этого множителя. Рассмотрим задачу определения максимума функции F (хь лг2, ..., xyv) по всем xt, принадлежащим некоторому множеству 5 и удовлетворяющим соотношению вида О(хь \. Будем вычислять значения величин ь ..., Лтд), у± = О(хь хь...9 xN), B.23) когда xt пробегают все множество 6". Это дает отображение подмножества УУ-мерного .^-про- .^-пространства на часть двумерного ^-пространства. Область в Граница Рис. 18. ^-пространстве часто называется пространством момен- моментов по причинам, которые завели бы нас в слишком да- далекие детали. Чтобы объяснить простой геометрический метод, который мы будем применять, допустим, что множество точек (у^у^у которое получается, когда (хь лг2,..., х^) пробегает S, обра- образует выпуклое множество в ^-плоскости. Мы можем мыс- мыслить это множество как внутренность овала вместе с его границей. Чтобы решить исходную задачу, состоящую в отыскании экстремального значения ух при фиксированном (или ограни- ограниченном сверху или снизу) уь мы должны определить точки границы овала (рис. 18). Следовательно, исходная задача
ГЕОМЕТРИЧЕСКОЕ ПРОИСХОЖДЕНИЕ 79 разыскания максимума эквивалентна задаче определения гра- границы овала. Эту границу можно найти геометрически следующим образом. Возьмем на плоскости (уь у%) прямую, скажем ayi + by% = k, B.24) и будем сдвигать ее параллельно самой себе до тех пор, пока она не станет касательной к овалу. Эта геометрическая Точна касания Точна касания Рис. 19. операция, очевидно, эквивалентна аналитической операции из- изменения k на некотором интервале. Точки касания в точности совпадают с граничными точ- точками овала, как показано на рис. 19. Если эту операцию повторить при разных значениях а и Ъ, которые соответствуют прямым всех направлений, мы охваты- охватываем всю границу. Заметим, что мы использовали фундаменталь- фундаментальное понятие двойственности двумерных фигур: геометрическое место точек можно рассматривать как огибающую касательных. Для того чтобы использовать эту идею конструктивно для получения конкретных аналитических результатов, мы заметим, что точки касательной определяются условием, что расстояние прямой ауг-\- by^ = k от начала имеет экстремаль- экстремальное значение (максимум или минимум). Для фиксированных а и Ь расстояние от начала пропорционально k. Таким обра- образом, максимизация или минимизация величины k, определяе- определяемой равенством <*У\ + by* = aF (*„ x2,..., xN) + bQ(xl9 x* ..., xN)> B.25) дает граничные точки.
80 МНОГОМЕРНЫЕ ПРОЦЕССЫ РАСПРЕДЕЛЕНИЯ [ГЛ. II Если а не равно 0, мы можем поделить на него и рас- рассматривать эквивалентную задачу определения экстремальных значений выражения F (хь х* ..., xN) + ХО (*ь *»..., хд), B.26) где h/a — l. Теперь мы видим истинное происхождение мно- множителя Лагранжа, а также то, каким образом обобщить эти идеи на случаи, когда имеется несколько ограничений. Хотя эти идеи совсем просты, некоторые детали строгого их осуществления опираются на весьма глубокое понятие, именно, на понятие выпуклости. Поэтому мы будем следовав формальному, интуитивному пути, а читателя, интересующегося доказательствами и обобщениями этих идей, будем отсылать к некоторым работам. 15. МНОЖИТЕЛЬ ЛАГРАНЖА В КАЧЕСТВЕ ЦЕНЫ Если считать, что функция F (xv x2, ..., х^) характери- характеризует наш «доход», обусловленный «распределением» (хь х2,... ...> *n)> а функция G (xh хь ..., jCjv) характеризует «издерж- «издержки», соответствующие этому распределению, то X, или — X, имеет смысл цены. Это интуитивное понятие можно сделать совершенно точным. Оно имеет важное значение в матема- математической экономике вообще и в теории линейного програм- программирования в частности. В приложении II в конце книги эти идеи рассмотрены более детально. 16. ПРИМЕНЕНИЕ МНОЖИТЕЛЯ ЛАГРАНЖА - I Вернемся теперь к задаче максимизации, разобранной в § 2, и выясним, как ее можно было бы рассматривать с по- помощью множителя Лагранжа. Вместо задачи отыскания мак- максимума функции lt..., xN; ... + g*r(XN, Ум) B.27) при ограничениях (а)
16] ПРИМЕНЕНИЕ МНОЖИТЕЛЯ ЛАГРАНЖЛ — I 81 мы рассмотрим задачу отыскания максимума видоизмененной функции g\ C*i» У\) + при ограничениях % ;;;», - i <**» где X предполагается на время фиксированным параметром. Максимизацию по yt можно выполнить независимо от мак- максимизации по xt. Введем функцию Л,- (xi9 X) = ht (xt) = max [gt (xif yt) — \yt]. B.31) Для того чтобы это определение имело смысл, будем пред- предполагать, что ^l (Xi\ yi) -> 0 при у{ — оо. B.32) Если дело обстоит не так, то этот метод не годится. Посколь- Поскольку в приложениях результат B.32) является следствием «за- «закона убывающих доходов», мы будем исходить из допуще- допущения, что он имеет место. Задача сводится к задаче максимизации функции h\ {хх) -\- 1ц (хъ) -\-... -{- hN (xN) B.33) при ограничении B.30,а). Эта задача легко решается методом функциональных уравнений, изложенным в главе I. Решение JCf(X;jc), /=1, 2, ..., /V, этой задачи оптимиза- оптимизации будет, естественно, зависеть от X; значения у{ =yt (X), которые будут давать функцию ht (jcf), определяемую фор- формулой B.31), также зависят от X. Будем далее менять Хдо тех пор, пока не удовлетворим условию %yi(k)=y. B.34) Ниже, в § 19. мы исследуем законность и осуществимость этого подхода. А теперь продолжим наше рассмотрение фор- формальной процедуры.
82 МНОГОМЕРНЫЕ ПРОЦЕССЫ РАСПРЕДЕЛЕНИЯ [ГЛ. И 17. ПРИМЕНЕНИЕ МНОЖИТЕЛЯ ЛАГРАНЖА - II Таким же обычным путем мы рассматриваем задачу оты- отыскания максимума функции B.35) при ограничениях (a) alx1-\-aixi + ... + aNxN*?:x, (b) Mi + hx-г -f... + bNxN ^y, x^ Строим новую функцию ...+bNxN] B.37) и рассматриваем задачу нахождения ее максимума в области, определяемой условием B.3б,а). Соответствующее рекуррентное соотношение имеет вид /n(х) = max [gN(xN) — lbNxN-\-fN-\ (x — aNxN)\. 0^xN^x/aN -B.38) Решение xt = xt (X; x) зависит от Х так же, как и функции дохода /дг(лг). Величина X теперь меняется в пределах, допускаемых ограничением B.36, Ь). 18. ПОНИЖЕНИЕ РАЗМЕРНОСТИ Прежде чем приступить к теоретическому обоснованию, а затем и к некоторым приложениям, остановимся на воз- возможности понижения размерности, которую позволяет осу- осуществить наш метод. Пусть рассматривается задача отыска- отыскания максимума функции по множеству значений хр удовлетворяющих условиям N 2 auxj ^cit I = 1, 2,..., Ж, B.40)
191 эквивалентность вариационных злдлч 83 и, возможно, другим условиям вида (а) -, = 0,1,2,..., j Мы можем свести эту задачу к задаче определения последо- последовательности функций {/jv(q, с\2,..., с^)} от Ж переменных с 1, ?*>..., см> к которой применим обычный алгоритм. Вводя k множителей Лагранжа, можно сформулировать новую задачу максимизации функции ) при М—k ограничениях N Таким образом, задача сводится к определению последо- последовательности функций от Ж — k переменных вместе с поиском по ^-мерному пространству переменных lt. Ограничения на объем памяти вычислительных машин таковы, что легче иметь дело с большим числом одномерных задач, нежели с одной многомерной задачей, а потому указанная здесь про- процедура очень часто дает нам возможность рассматривать задачи, которые другими способами не удалось бы решить. Кроме того, во многих случаях оказывается, что парамет- параметрическое представление решения через Xt («цены») является столь же ценным, как и его представление в терминах ре- ресурсов с(. Вопрос о выборе k зависит от конкретной задачи, от типа имеющейся вычислительной машины и от времени, вы- выделенного на вычисления. 19. ЭКВИВАЛЕНТНОСТЬ ВАРИАЦИОННЫХ ЗАДАЧ Теперь мы хотим исследовать связь между вариационной задачей в ее первоначальном виде и задачей, возникающей при применении множителя Лагранжа. Чтобы выяснить харак- характер результатов, которые здесь можно получать, достаточно рассмотреть частную задачу.
84 МНОГОМЕРНЫЕ ПРОЦЕССЫ РАСПРЕДЕЛЕНИЯ [гл. II Рассмотрим задачу отыскания максимума функции R (xh **...» xN\ yh уь ... > jVa) = ft (xh У\) + ft С** Уд + • • • ... + gN (xn> Ум) ~ X (yi +^2 +... +^лг) B.44) при ограничениях (а) <ь> л а. а ¦ B'45) Пусть Jt; (X), j?i (X), /=1,2, ...,iV — множество максими- максимизирующих значений в предыдущей задаче. Мы хотим пока- показать, что эти значения доставляют максимум функции gi (xi, У\) + g% (x-t, yi)-\-...-\- gN (xn, Ук) B-46) B.47) при условиях (а) (Ь) 7V Ценность этого результата состоит в том, что ни одно вычисление не пропадает даром. Каждый раз, когда задача B.44) решается для конкретного значения X, тем самым решается исходная вариационная задача для соответствующего значения у. Доказательство ведется от противного. Предположим, что существует точка {xiy yt}y удовлетворяющая условиям B.47), для которой S gi (xt, Уд > S gi №> М B-48) Тогда, так как N N 5>/=2Л = У' B.49) 1=1 /=1 мы получим: 2 л (¦*«•- л) - >¦ 2 л > 2 л №. л) - ^ 2 л- B-50)' l 1
201 монотонность по X 85 Но эю противоречит предположению о том, что. \хь х.ъ ..., хх\ уь уь ..., ух] является максимизирующим множеством для функции B.44) при условиях B.45). 20. МОНОТОННОСТЬ ПО X Во всех приложениях следует ожидать, что, когда X про- пробегает интервал [0, со], у ведет себя подобным же образом. Однако строгое доказательство этого факта требует извест- известных усилий и некоторых предположений относительно функ- функции gi (*, У)- Покажем совсем просто, что при возрастании X от 0 до N со сумма 2jj У-i М убывает монотонно. Этого следовало i= 1 ожидать, исходя из юго, что X может рассматриваться как цена. Однако, поскольку мы наложили очень слабые ограни- ограничения на множество значений xt и y-v мы не можем ожидать N строгой монотонности ^ у- (X) или непрерывности ее по X. Положим N N B.51) Тогда, если 0<^Х<^[х, то в силу свойств максимизации (а) их — \ (Ь) ll[x |AI^ ^ Ui \i.VX. ) Следовательно, используя обе части неравенств B.52,а) и B.52,Ь), будем иметь: «х - Хг>х ^ % - ^ + (I* - ^) V 1 g / Поэтому Xfo-X)V B.54)
многомерный процессы распределения [гл. и Так как ц— Х^>0, то мы получаем требуемый резуль- результат: vx^Vp B.55) Комбинируя этот результат с B.52,а), получим: откуда HxS^V B.57) Эта монотонность значительно упрощает определение зна- значения X, соответствующего данному значению у. Для сокра- сокращения времени, требуемого для решения конкретной задачи, можно использовать методы поиска, которые будут рассмот- рассмотрены в главе IV, или какие-либо более простые методы. 21. ПРИМЕНЕНИЕ МЕТОДА МНОЖИТЕЛЕЙ ЛАГРАНЖА - РЕКЛАМНАЯ КАМПАНИЯ Рассмотрим ситуацию, в которой средства предприятия делятся между различными производственными отделами. Каждый из этих отделов представляет свою оценку возмож- возможной прибыли в виде функции от производства своего ин- индивидуального продукта. В таких случаях можно встре- встретиться с кривыми индивиду- индивидуального дохода, имеющими типичную S-образную фор- му, приведенную на рис. 20. Чтобы получить функцию полезности нужного вида, используем уравнение . ^ и Производственно/Б возможности х n(x)=vi\\—{\-e'ailxY\ Рис. 20. B 58) Здесь vt — максимально возможный доход*), который может быть получен на рынке, а аг — уровень рыночной кон- конкуренции. Малые ассигнования дают небольшие шансы на *) Имеется в виду доход при наличии неограниченно больших средств. (Прим. ред.)
21] ПРИМЕНЕНИЕ МЕТОДА МНОЖИТЕЛЕЙ ЛАГРАНЖА 87 успех, в то время как выделение большого количества про- производственных средств приводит рынок в состояние насыще- насыщения. Обсуждение связанных с решением такой задачи вы- вычислительных вопросов и числовые результаты содержатся в § 23. Мы видели, как задача максимизации, включающая один тип ресурсов и N технологических процессов, приводится к последовательности одномерных задач максимизации. Но представим себе, что надо распределить несколько типов ресурсов; это означает, что общие затраты являются функ- функцией нескольких переменных. Тогда мы должны иметь дело с последовательностью функций нескольких переменных и встретиться со всеми вычислительными трудностями, которые естественно при этом возникают. В качестве примера такого процесса рассмотрим следую- следующую ситуацию. Пусть упомянутое выше предприятие наряду с ограниченным производственным оборудованием имеет также ограничение на расходы по рекламе. Доход от конкретного распределения ресурсов принимается равным г г (х, y) = vt[ 1 - A - e-ai/[x+y))% B.59) где х — расходы на производство и у — расходы по рекламе. Из свойств этого уравнения вытекает, что без производства не может быть получена никакая прибыль, каковы бы ни были расходы на рекламу; но в сочетании с производством, чем больше реклама, тем больше прибыль. Наша задача: вы- выбрать xt и уь /=1, 2, ..., N, так, чтобы максимизировать функцию N по всем. Jtj и уь удовлетворяющим условиям N 2 xt < х, i=l B.61)
88 МНОГОМЕРНЫЕ ПРОЦЕССЫ РАСПРЕДЕЛЕНИЯ [ГЛ. 11 Полагая fN(x, у) равной максимуму RN в этой области, обычным путем получим функциональное уравнение fN(х, У) = max [rN{xN, yN) JrfN_l(x — xNy у — 22. МЕТОД МНОЖИТЕЛЕЙ ЛАГРАНЖА Как известно, задачи с большим числом измерений легко исчерпывают возможности памяти вычислительной машины и требуют чрезмерно большого времени. Хотя достоинством метода динамического программирования является существен- существенное понижение размерности, мы видели, что трудности, со- сопутствующие функциям большого числа переменных, все же могут оказаться непреодолимыми. Использование множителей Лагранжа приводит во многих случаях эти задачи к доступ- доступному для расчетов виду. Предположим, что мы имеем неограниченные возможности расходования средств на рекламу, что каждый доллар, затра- затраченный на рекламу, имеет результатом X долларов, вычитае- вычитаемых из нашего общего дохода. Ясно, что, если X равно нулю, мы будем рекламировать безудержно, в то время как если X велико, мы вовсе откажемся от рекламы. Каждый выбор X N дает некоторое значение ^ yt между 0 и оо, где yt = у{ (X) представляет собой максимизирующий выбор yv Если мы выберем X так, чтобы ^yt =уУ то, как указывалось выше, мы решим тем самым исходную задачу с двумя условиями без явного рассмотрения второго условия. Функциональное уравнение, связанное с задачей максимизации функции N N 2 Г1 (Xi> Уд — к 2 У'1' ИМееТ тепеРь ВИД fN(X)= max irN(X/ Исходная задача решается по следующей схеме: фиксируем X, решаем одномерную задачу, проверяем полученное значе- значение ?j/j, подбираем X так, чтобы сделать У^уг приблизи-
231 РЕЗУЛЬТАТЫ ВЫЧИСЛЕНИЙ 89 тельно равной у, решаем задачу для нового значения X. По- Повторяем этот цикл, пока не найдем X, для которого 2Л =У- Обычно бывает достаточно трех или четырех итераций, в за- зависимости от усилий, затрачиваемых для определения X на каждой итерации. Подробно этот итеративный процесс будет обсуждаться в следующем параграфе. Один двумерный расчет даст доходы и оптимальные по- политики для всех комбинаций значений х и у, не превосхо- превосходящих своих верхних границ. В процессе такого решения мы вычисляем значения функции двух переменных в некоторой области плоскости (х, у). Используя метод множителей Ла- гранжа, мы находим пространственную кривую, которая дает доходы и политики в точках кривой на плоскости (х, у) для каждого конкретного X. Несколько значений X дают несколько таких кривых в пространстве. По этим кривым можно получить общий вид функции двух переменных. Этот метод будет проиллюстрирован в следующем параграфе. 23. РЕЗУЛЬТАТЫ ВЫЧИСЛЕНИИ Рассмотрим сначала простейший тип процесса динамиче- динамического программирования, обсуждавшегося в § 21,— процесс с одним видом ресурса. Программирование такой задачи для быстродействующей цифровой машины, такой как Джонниак или ИБМ-709, может быть с использованием языка Фортран выполнено за пару дней. Блок-схема программы для этой задачи показана на рис. 21. Оптимальнее распределение 100 единиц ресурса по 20 процессам потребует около 10 минут машинного времени. Результаты распределения для случая, когда максимальные возможные доходы от каждого процесса vt (i=l, 2, ..., 20) принимают зна- значения 1, 2, ..., 20 (определяемые потенциальным рынком) и конкуренция пропорциональна объему рынка (а( = г^ = /), приведены в таблице 2.3. Таблица 2.3 Процесс Распределение от 1 до 9 0 10 7 11 7 12 8 13 8 14 9 15 9 16 10 17 10 18 10 19 11 20 11
МНОГОМЕРНЫЕ ПРОЦЕССЫ РАСПРЕДЕЛЕНИЯ ¦ дь/числить (или двести) ? Вычислить значеьие /}(Х) для следующего Значения X 0-Х 0 -xt ¦ иЩ * пШ + r^CX х„)-* Мет \Да х, X? \ Да TS& Х+1-+Х -— ' ' 1 Максимизировав с/л от fMy npufo/ли г-го процесса и приоши от остальных A-7) процессов Нет За) и t от чом нить ответ ?оотеетствующ) т?имал1?ну/о •«шитику Печати 0о/од f{(X) Распределение at (X) ¦ ¦ \Да (Стоп) пет Перейти к следующему процессу Рис. 21. Блок-схема программы для одномерной задачи распре- распределения ресурсов.
23] РЕЗУЛЬТАТЫ ВЫЧИСЛЕНИЙ 91 Рис. 22 показывает, что хотя индивидуальные функции до- дохода в высшей степени нелинейны, оптимальная функция дохода для 20 процессов является почти линейной функцией от суммарного производства. Рассмотрим теперь модель производства — рекламы §§ 21—22. Используя метод множителей Лагранжа, мы по- получим для каждого фиксированного X одномерную задачу. II f I 80 40 О 20 40 60 80 100 Количество распредеммнш единиц ресурсов Рис. 22. Общая прибыль как функция коли- количества ресурсов при использовании опти- оптимальной политики. При этом для 0^x^200 вычисления занимают около двух минут на один процесс. Переписывая уравнение B.63) в виде fN (х) = max I max (rN (xn> Ук> — 1Ук) + °^xn-x B.64) мы видим, что можно сначала получить доход в виде функ- функции от хАу а затем максимизировать по xN. В следующем параграфе мы разовьем эту идею в деталях. Время вычисле- вычислений значительно сокращается за счет доказательства того, что если максимизирует — tyN> Для x = x N> то для x^>xN максимизирующее значение yN будет меньше, чем yN*). *) Это—следствие знания структуры функции, вхбдящей 1 B.63). См. приложение I О. Гросса.
92 МНОГОМЕРНЫЕ ПРОЦЕССЫ РАСПРЕДЕЛЕНИЯ [ГЛ. II На рис. 23 изображена функция rN (xN, yN)— \yN как функция уN при двух фиксированных значениях хл„ х'м^>х1$- f T.(f) fB) УЛ/ ^N Фиксировано Рис. 23. Для фиксированного X оптимальные ассигнования на рекламу yN убывают, когда ассигнования на производство хN возрастают. На рис. 24 мы видим, как с изменением х изменяется ?у. для оптимально выбранных уг при фиксированном X. Разрывы происходят за счет того, что при малых х увеличение х имеет результатом оптимальное распределение, включающее до- дополнительный процесс с нену- ненулевой ин1енсивностью и скачок в ассигнованиях на рекламу. Для каждой точки кривой в плоскости (х, у), аналогич- аналогичной приведенной на рис. 24, вычисления дают также доход, связанный с оптимальным рас- распределением х единиц для целей производства и у единиц для целей рекламы. После того^как вь/деленнш ресурсов Рис. 24. Расходы на рекламу, если используется оптимальная политика, при фиксированном X. получено несколько кривых для различных X, мы можем на- начертить двумерную функцию дохода (рис. 25). Мы проанализировали двумерный процесс. Прямой анализ такого процесса методом двумерного динамического про- программирования потребовал бы таблиц функции из 200X600 = = 120 000 значений и, следовательно, сотен часов машин- машинного времени. Применение метода множителей Лагранжа по- позволило нам получить эквивалентный результат приблизительно за три часа. При этом было использовано 1000 ячеек памяти.
241 ВЫЧИСЛЕНИЕ МНОЖИТЕЛЕЙ ЛАГРАНЖА 93 24. ВЫЧИСЛЕНИЕ МНОЖИТЕЛЕЙ ЛАГРАНЖА В случаях, когда множитель Лагранжа разумно интерпре- интерпретировать как цену и когда целевая функция и управляемая переменная заданы в денежном выражении, приближенное значение безразмерного множителя часто можно найти с по-, мощью методов анализа цены, не прибегая к быстродейст- быстродействующим машинам 600 100 Производство Рис. 25. Общая прибыль, пол)чаемая при опти- оптимальном распределении различных комбинаций начальных ресурсов. Однако в большинстве случаев множитель, будучи все же «ценой», измеряет обмен на первый взгляд ..несоизмери- ..несоизмеримых количеств. Например, в задаче о запасных частях для самолета с ограничениями по обьему и по весу груза исклю- исключение ограничений по объему с помощью множителя Ла- Лагранжа приводит к тому, что этот множитель приобретет нево- невообразимую размерность «стоимость просгоя/кубический фут». Чтобы определить априори числовое значение множителя, нам нужно было бы узнать, насколько, дополнительная единица объема уменьшит ожидаемые издержки от нехватки при оп- оптимальной политике. Очевидно, знание этого позволило" бы решить исходную задачу.
94 МНОГОМЕРНЫЕ ПРОЦЕССЫ РАСПРЕДЕЛЕНИЯ [гл. И Мы разрешим эту дилемму итеративным способом. Будем последовательно угадывать значение множителя, пока не найдем правильного. Это истинное значение является ценой, приводящей к оптимальному решению, в точности удовлетво- удовлетворяющему ограничению задачи. Рассмотрим процесс фактического угадывания множителя. Так как каждое угадывание означает полное решение задачи динамического программирования, то полезно затратить не- некоторые усилия на априорный анализ этой операции. Чтобы сделать рассмотрение конкретным, предположим, что мы решаем задачу максимизации функции SftW С2-66) 1=1 по всем xi9 удовлетворяющим условиям 2>* = *. B-66) *=1 2М*,) = Й. B-67) 1 = 1 Предположим далее, что очевидная двумерная постановка fN(x, й) = тах[?(л^)+/л_1(* — xN) h — h(xN))]9 B.68) XN где 0 ^ xN ^ х и hN (xN) ^ h, заменена одномерным вариан- вариантом: fN(x) = max[gN(xN) — )JiN(xN) + fN_x(.x — xN)\, B.69) XN где X — множитель Лагранжа, который надо определить так, чтобы для максимизирующих хг выполнялось условие Никаких определенных рецептов для первоначального выбора X нет. Разумное угадывание должно быть основано
24] ВЫЧИСЛЕНИЕ МНОЖИТЕЛЕЙ ЛАГРАНЖА на специфике задачи. Однако во многих случаях существует эффективная схема для третьего и последующих приближе- приближений. Она основана на интерполяционной формуле. Если уже испробованы два значения X, то можно вычислить два мно- множества значений по таблице 2.4. Таблица 2.4 Оптимальная политика Е h (А*;) Тогда, зная Хо, Хх и соответствующие значения ? h (xt\ можно попытаться использовать эти данные, чтобы вычислить Х2, для которого 2 h{ (х() будет равна h. Если значения i ^ hi (xt) обозначены соответственно через /г0 и hh то фор- i мула для расчета имеет вид Х2 = ^~^° (h — /z0) + Хо. B.71) Если вычислены более чем два значения X, то можно исполь- использовать два последних из них или воспользоваться более точ- точной интерполяционной формулой. Обычно оказывается возможным априори определить ре- результат выбора Х = 0. Эту информацию можно использовать, чтобы не тратить времени и сил на фактическое вычисление. Если такой возможности нет, может оказаться необходимым начать вычисление с двух произвольно выбранных значений. После того как использовано линейное приближение для нахождения Х2, может оказаться удобным употребить все три результата для нахождения Х3 с помощью кубического уравнения. Оправдано или нет дополнительное программиро- программирование, требуемое для этой весьма сложной интерполяции,— должно определяться объемом задачи. Наконец, оказалось удобным не хранить информацию о политике, полученную при предварительных вычислениях, имеющих целью определить истинное значение множителя. После того, как истинный множитель найден, вычисление
96 МНОГОМЕРНЫЕ ПРОЦЕССЫ РАСПРЕДЕЛЕНИЯ [ГЛ. П повторяют, записывая на магнитной ленте или перфокартах таблицы оптимальных политик. Так как вывод результатов, даже на ленту, страшно замедляет работу вычислительной машины, необходимость повторения одного вычисления не превращает эту схему в неэффективную. Во время вычисле- вычисления при фиксированном X строится таблица оптимальных зна- k чений ^ hi (xt) = Hk (jc), так же как и обычная таблица fk (x). i=i Эта таблица «кумулятивная», она пополняется на _ каждом шаге с помощью формулы Hk(x) = hk(xk) + Hk_i(x-xk), B.72) где xk, — как обычно, максимизирующая политика, связанная С рекуррентным соотношением fk (*) = max [gk (xk) +/*-i (x — xk)}. Важно отметить, что таблица функции Hk (x) одна, не- непрерывно пополняемая аналогично таблице fk{x), а не мно- множество таблиц, как таблицы политик. Поэтому ее всегда можно хранить в оперативной памяти. Число HN(x) есть зна- N чение ^ ht (х(), используемое для определения следующего значения X. Величина fN(x)-\-\HN(x) есть фактический до- доход при политике, оптимальной относительно множителя Ла- гранжа X. 25. ЗАДАЧА С МНОГИМИ УРОВНЯМИ Задача, которую мы только что рассматривали, иллюстри- иллюстрирует интересный аспект постановки задач динамического про- программирования. Благодаря существенной зависимости труд- трудности решения от числа параметров состояния некоторые за- задачи, кажущиеся чрезвычайно трудными с обычной точки зрения, оказываются на самом деле простыми с точки зре- зрения динамического программирования, и наоборот. В приведенной выше задаче мы столкнулись с задачами выбора политик на двух уровнях. На первый взгляд, более простой задачей была задача оптимального (с точки зрения
26] МНОГОМЕРНОЕ ПРОСТРАНСТВО ПОЛИТИК 97 извлечения прибыли) распределения фиксированных расходов на производство и расходов на рекламу. Более трудной могла показаться задача оптимального разделения наличного капитала между производством и рекламой таким образом, чтобы оптимальное же использование ассигнованных средств максимизировало прибыль. На самом деле это не так. Первая формулировка приводит к двумерной задаче. Эта задача была решена сведением к последовательности одно- одномерных задач с помощью множителя Лагранжа. Каждая такая одномерная задача была в действительности описанной выше задачей второго типа. Выбирая множитель Х = 0 и произ- производя максимизацию по области B.74) мы можем решить задачу распределения с двумя уровнями. Одномерная постановка задачи имела бы вид fN(x)= max [rN(xN, yN)+fN_x (x — xN— у )]. B.75) °X+yX Это замечание остается в силе для широкого класса за- задач со многими уровнями. Ниже в этой главе мы рассмотрим транспортные задачи, в которых требуется найти план опти- оптимальной перевозки грузов из небольшого числа источников в большое число пунктов потребления. Соображения, кото- которые мы использовали выше, показывают, что задача опти- оптимальной перевозки из одного производящего центра в не- небольшое число складов и затем в пункты потребления не является существенно более трудной. 26. МНОГОМЕРНОЕ ПРОСТРАНСТВО ПОЛИТИК В модели рекламы мы хотели максимизировать функцию по двум переменным. В § 23 мы упомянули, что уравнение можно было бы заменить уравнением /л,(*)= max [Q (х„)+/„_,.(*-*дМ. B.77)
98 МНОГОМЕРНЫЕ ПРОЦЕССЫ РАСПРЕДЕЛЕНИЯ fГЛ. II где QN(xN)= max {rN(xNiyN)-'kyN). B.78) 0<v;v<oo Это замечание имеет не только попутный интерес. Если программировать уравнение B.76) непосредственно, то для каждого значения х надо было бы вычислить все допусти- допустимые пары (л*дМ уА) и в резулыате величина rx(xN, yN) — — \y# вычислялась бы заново для одних и iex же xY и yN много раз. Вычислив сначала функцию QN{xN), мы из- избежим ненужного повторения. Это упрощение происходит за счет того, что перемен- переменная уN фигурирует только в целевой функции и не входит в аргумент функции fN_{. Мы увидим, что этот способ будет использован много- многократно. Он имеет как аналитическое, так и вычислительное зна- значение при решении задачи о хранении на складе (глава 111). 27. ПРОБЛЕМА НАДЕЖНОСТИ Рассмотрим теперь более детально проблему надежности, уже обсуждавшуюся в §§ 27—28 главы I. Предполагаем, что при использовании \-\-ntj компонент в у-й ступени ве- вероятность успешного функционирования этой ступени задается известной функцией <рД/Я/). Предположим далее, что имеются два типа ограничений, по стоимости и по весу. Пусть Cj — стоимость отдельной компоненты в у-й ступени и Wj — ее вес. Тогда суммарные вес и цена задаются выражениями TV 7 = 1 N B.79) Задача, которую мы хотим рассмотреть, состоит в максими- максимизации общей надежности N 1
29] ЧИСЛЕННЫЙ ПРИМЕР по всем mj при ограничениях (а) /Иу = 0, (с) 28. ВВЕДЕНИЕ МНОЖИТЕЛЯ ЛАГРАНЖА Чтобы не иметь дела с последовательностями функций двух переменных, введем множитель Лагранжа. Рассмотрим новую задачу максимизации выражения N [ПъЛ B-82) по всем nijy удовлетворяющим только первым двум ограниче- ограничениям B.81). Полагая fN(c) равной этому максимальному зна- значению, где с то же, что в B.81,Ь), получаем рекуррентное соотношение fN(c)= max [4N(mA)e~ Хт^^м_х (c-mNcN)] B.83) для yv=2, 3, ... и соотношение fl(c)= max [^i(ml)e"Xm^]. B.84) 0 < mi [] Еще раз отметим, чго каждое тг может принимать только значения 0, 1, 2, ... 29. ЧИСЛЕННЫЙ ПРИМЕР Численное решение задач упомянутого выше вида может быть получено совсем просто. (Блок-схема программы дана' в § 30.) Для иллюстрации рассмотрим устройство с четырьмя типами компонент, для которых цены, веса и вероятности успешного функционирования даются таблицей 2Д 4»
100 МНОГОМЕРНЫЕ ПРОЦЕССЫ РАСПРЕДЕЛЕНИЯ [ГЛ. И Как и раньше, предположим, что может быть использован каждый из этих четырех типов компонент. Кроме того, если Тип компоненты 1 2 3 4 5 Цена 5 4 9 7 7 Вес 8 9 6 7 8 Та блица 2.5 Вероятность успешной работы 0,90 0,75 0,65 0,80 0,85 использованы ntj дополнительных компоненту-го типа, вероят- вероятность успешной работы у-й ступени дается формулой Ty(/»y)=l-O-Py)m/fl. B.85) При допустимом количестве в 100 единиц стоимостных затрат и 104 единицы веса мы хотим определить число элементов каждого типа, которое максимизирует общую вероятность успешного функционирования, задаваемую, как и выше, выражением Начав с уравнения 5 п max B.86) B.87) продолжаем по общей формуле /, (с) = max [Ь (тй) е~ \mi\ для / = 2, 3,..., где ^(с - B.88) Величину X надо определить так, чтобы Начав с Х = 0,001, мы получим: 5 /в A00) = Ц ср, (mt) ехр ( = 0,8882, B.89)
31] ОБОБЩЕНИЕ 101 и значения т{ = 2, /#2 = 3, /#3 = 4, /w4 = 2, /я5 = 2, с общим 5 весом ^ /я.^ = 97. Вероятность успешной работы равна 0,8882- е97Х = 0,977. Теперь уменьшим X до 0,0008 с тем, чтобы увеличить общий использованный вес. Результат таков: /вA00) = 0,9063, т1 = 2, /я2 = 3, /я3=4, /^4=3, /яв=2, 5 ^ miwi= 104. Вероятность успешной работы равна @,9063 -elo4X) = 0,984. Это и есть решение задачи. Машинное время, затраченное на вычисление, составило 4 минуты. Стоит заметить, что эта же самая задача с пятьюдесятью типами компонент потребо- потребовала бы приблизительно 50 минут, так как время, требуемое для решения задачи таким способом, по существу, пропор- пропорционально числу типов компонент *). Причина, по которой мы не говорим «прямо пропорционально», — в необходимости поиска истинного значения X. 30. БЛОК-СХЕМА ПРОГРАММЫ (см. рис. 26) 31. ОБОБЩЕНИЕ Рассмотрим теперь более близкий к действительности вариант предыдущей задачи. Вместо предположения о том, что мы свободны в выборе только числа компонент, пред- предположим, что у нас имеется выбор типа компонент, используе- используемых в каждой ступени, скажем, выбор между типом А и типом В. Пусть с{ (А) и wt (А) обозначают стоимость и вес одной компоненты типа А в /-й ступени; ct (В) и wt (В) — соответствующие величины для компоненты типа В. Мы могли бы при желании учесть возможность комбинаций типов ком- компонент в каждой ступени, сохранив в силе последующие рассуждения. Как и раньше, мы хотим при заданных общих ограниче- ограничениях по стоимости и весу определить, какой тип компоненты *) Точнее, числу ступеней. (Прим. ред.)
102 МНОГОМЕРНЫЕ ПРОЩССЫ РАСПРЕДЕЛЕНИЯ [гл. ri дводимые числовые данные стах — начальный напитал Л —множитель Лагранжа Мтах — числя элементов быв од J/ таблиц Таблица оптимальных вероятностей Таблица оптимального числа олеменгов ТбИ акопленного веса для ffсе а с Зводимые таблица/ бероя/пности для /гаугдого злемента Стоимости каждого злеменям Зес каждого элемента Максимальное чи тов каждого вида Рис. 26.
31] ОБОБЩЕНИЕ ЮЗ и в каком количестве использовать в каждой ступени, чтобы максимизировать надежность устройства. Пусть ^(/я,; Л), ср; (#/,.; В) обозначают надежность /-й ступени, когда параллельно ис- используются т{ компонент типа Л и В соотвегсгвенно. Как и выше, рассмотрим последовательность функций {fN(c, w)}, rj(e fN(c, w), по определению, есть максимальная надежность ЛЛступенного устройства при ограничениях с по стоимости и w по весу. Тогда /,(с, ze;) = max [max <pi(^b Л), таху{(т{; B)\ B.90) где в первом выражении область изменения а во втором — Как и прежде, т{ может принимать только значения 1,2,... Для произвольного N имеем рекуррентную формулу л,; Л) X /vi w~wA(A)mw}; тах?(/и^; 5) X miV ^,^E)^v' ^-^E)/ял,]Ь B.91) где в первом выражении Nff N B.92) и во втором 1 ^ mN ss min {[с/сл. E)], [да/а»л. (fl)]}. B.93) В обоих случаях //гдг может принимать только целые значе- значения 1, 2, ... Выяснив, как формулируется двумерный вариант задачи, мы можем ввести множитель Лагранжа и поступать, как выше, чтобы получить одномерный вариант.
104 МНОГОМЕРНЫЕ ПРОЦЕССЫ РАСПРЕДЕЛЕНИЯ [ГЛ. И 32. ТРАНСПОРТНАЯ ЗАДАЧА ХИЧКОКА - КУПМАНСА В математической экономике большое значение имеет задача наиболее эффективного перемещения ресурсов из одного пункта в другой. Это — один частный случай общей проблемы определения структуры оптимальной сети (где, конечно, поня- понятие «оптимальности» зависит от того, как будет использо- использоваться сеть). Задачи такого типа постоянно возникают в эконо- экономической, индустриальной, вычислительной областях, в области электроники, связи и организации. Относительно немногие из этих захватывающих топологических задач рассматривались детально, и ни одна из них не поддавалась простому ана- анализу. Модель, которую мы будем подробно обсуждать, назы- называется транспортной моделью Хичкока — Купманса, хотя она независимо изучалась Канторовичем и Ароншайном. Эта частная задача была предметом широких исследова- исследований, в результате которых в настоящее время мы располагаем целым рядом остроумных и мощных методов (принадлежащих Данцигу, Фладу, Форду и Фулкерсону) для анализа некото- некоторых важных специальных случаев; ссылки имеются в конце этой главы. Мы рассмотрим здесь другой частный случай более офщей задачи, который особенно хорошо поддается рассмотрению с помощью функциональных уравнений. Наклады- Накладываемые ограничения позволяют нам рассмотреть более близ- близкие к реальным процессы, которые не могут быть обслужены методами, развитыми для линейных моделей. Мы покажем, что транспортную задачу Хичкока — Купманса можно трактовать как процесс распределения, к которому может быть применен метод функциональных уравнений — как непосредственно, так и в сочетании с методом множителей Лагранжа. С методической точки зрения этот процесс пре- предоставляет нам удобный случай ввести другой мощный мате- математический аппарат — метод последовательных приближе- .ний. Мы детально обсудим эти вопросы ниже, вместе с результатами нескольких численных экспериментов. Комби- Комбинируя эти два метода анализа — функциональные уравнения и последовательные приближения, — мы можем надеяться получить решение довольно сложных задач.
33] МОДЕЛЬ ТРАНСПОРТНОГО ПРОЦЕССА 33. МАТЕМАТИЧЕСКАЯ МОДЕЛЬ , ТРАНСПОРТНОГО ПРОЦЕССА Назовем пункты, в которых сосредоточены ресурсы, складами и пункты, в которых существует спрос на эти ресурсы, пунктами потребления. Иногда, и более образно, их называют соответственно источники и стоки (пот^ ебители). Мы можем считать их расположенными следующим образом: Склады Пункты потребления /=l:Di /=1:^1 2 : D9 2 : Р2 M:DM N:PNi хотя, конечно, такое приятное расположение не является ни необходимым, ни реально возможным. Нас будет интересовать только тот случай, когда либо число складов, либо число пунктов потребления мало, хотя мы и будем формулировать процесс в общих терминах. Если одно из этих чисел мало, другое может быть сколь угодно большим — это не повлияет на возможность решения задачи. В дальнейшем будем предполагать, что имеется один вид ресурсов, и введем следующие величины: xt — запасы этого ресурса на i-м складе, /==1, ..., М, \ Tj—спрос на этот ресурс в у'-м пункте потребления, > B.94) у 1 М J Предполагая, что общий запас равен общему спросу, т. е. что задача состоит только в распределении, будем иметь: Хотя, как мы увидим, более общая задача, когда запасы превышают спрос, может изучаться теми же методами, в случае равенства происходит существенное упрощение. Этот вопрос будет обсуждаться в § 37.
Юб МНОГОМЕРНЫЕ ПРОЦЕССЫ РАСПРЕДЕЛЕНИЯ [ГЛ. II Пусть Хц—количество ресурсов, отправляемое из i-го /о Qfil склада в у-й пункт потребления, ^ ' ' и gij(xij) — стоимость осуществления этой операции. B.97) Величины х^ подчинены трем ограничениям: (a) Неотрицательность. (b) Ограничение на запасы: общее количество ресур- ресурсов, отправленное из любого склада, должно равняться запасам на этом складе. B.98) (c) Ограничение на спрос, общее количество ресур- ресурсов, отправленное в любой пункт потребления, должно равняться спросу в этом пункте. Отметим, что мы исключаем транспортировку через пере- перевалочные пункты, т. е. мы не можем перемещать ресурсы из одного склада в другой и затем в пункт потребления или из склада в пункт потребления и затем в другой пункт потреб- потребления. Предыдущие словесные ограничения дают следующие соотношения: (a) хи^09 N (b) 2 ¦% = */• /=1> 2> •••> Л]> B.99) м (c) V >;¦• — г- /—12 N j Итак, мы пришли к задаче, которая состоит в определении неличин х-ф удовлетворяющих предшествующим условиям, так, чтобы минимизировать общую стоимость перемещения ресурсов ся*=2йуС%)- Bло°) и 34. ОБСУЖДЕНИЕ Ясно, что эта задача весьма сложна, если не ввести даль- дальнейших ограничений на вид функций gu(x); но даже тогда она остается сложной, если М и N велики. Особенно инте-
35] ДИНАМИЧЕСКОЕ ПРОГРХММИРОВЛНИЕ Ю7 ресен — сам по себе и как отправная точка для дальнейших исследований — случай, когда стоимость перевозки из любого склада в любой пункт потребления прямо пропорциональна перевозимому количеству, т. е. gu = duxu. .,, B.101) Коэффициент djj можно интерпретировать как расстояние. Задача минимизации становится тогда задачей из области линейного программирования, и, как отмечалось выше, имеется много изящных и быстрых алгоритмов для ее решения как вручную, так и с помощью вычислительных машин. Но эти методы неприменимы, если функции стоимости нелинейны, за исключением тех случаев, когда функции gtj (х) обладают определенными простыми структурными свойствами, дающими возможность тем или иным образом эффективно провести линейную аппроксимацию. 35. ПОДХОД С ТОЧКИ ЗРЕНИЯ ДИНАМИЧЕСКОГО ПРОГРАММИРОВАНИЯ Начнем с рассмотрения случая, когда имеются два склада и произвольное число пунктов потребления. Склады Пункты потребления Dr.xt Л: г, PN'rN Ключ к задаче — в том, что можно удовлетворять спрос по очереди, начиная с пункта Р^у затем переходя к PN_V и т. д. Как обычно, мы превращаем статический процесс в дина- динамический с тем, чтобы применить метод функциональных уравнений.
108 МНОГОМЕРНЫЕ ПРОЦЕССЫ РАСПРЕДЕЛЕНИЯ [ГЛ. II Введем затем функции fN(xh х2), определенные для jV= 1, 2, ..., хь лг2^0 следующим образом: fN(xly x2) — величина затрат при использовании оптимальной политики, когда начинают соответ- соответственно с количеств х1} х2 на складах D{ и *по\ D«, при фиксированных потребностях г,, г2, ... ' ' ' ..., Гдг соответственно в пунктах потребления Pv Pz, -.., PN. Удовлетворяя первым спрос в TV-м пункте потребления, мы понесем затраты (xiN) B.103) и уменьшим запасы ресурсов на складах Dx и D2 до хх—x{N и х2 — лг2ЛГ Используя принцип оптимальности, получим для УУ^2 рекуррентнсе соотношение fN (*» х*) = min [gw (хш) —XW X2~ где RN — двумерная область, определяемая условиями (b) B.105) (с) Для N= 1 имеем: /i(-^i, Jfa) = fti C*i) + &i(**). BЛ06) 36. ОБСУЖДЕНИЕ Ясно, что этот же самый метод может быть применен для трактовки аналогичной задачи с более чем двумя складами. Но если заботиться о численном решении, то при АТ^Змы столкнемся с обычными трудностями, вызванными размерностью задачи. В следующих параграфах мы обсудим некоторые приемы, которые можно использовать для преодоления этих трудностей.
38] УВЕЛИЧЕНИЕ ШАГА СЕТКИ 109 37. ПОНИЖЕНИЕ РАЗМЕРНОСТИ До сих пор мы не использовали дополнительную информа- информацию о том, что запасы равны спросу, т. е. что N Отсюда следует, что при фиксированном спросе вели- величину лг2 можно определить всякий раз, когда известна x-v Следовательно, мы можем исключать параметр состояния лг2 и просто написать: fN(xlt лг8) =/„(*,). B.108) Соотношение B.104) перейдет в w) + —-«iaM. B-109) fN (*i) = min \gw (xw) + g2N (rN — xw где x[N удовлетворяет условиям (a) <><*,— x[NJ | " I B.110) (b) 0^rN-xw^ %rt — xx. N Областью изменения переменной х{ в fN{x^) служит Го, ^ ri\ Таким же образом общая задача, включающая М складов, может быть сведена к вычислению последовательности функ- функций М — 1 переменных. Следовательно, задачи с двумя скла- складами совсем просты; задачи с тремя складами доступны не- непосредственному решению; решение задач с четырьмя и более складами требует использования специальных приемов. 38. УВЕЛИЧЕНИЕ ШАГА СЕТКИ В связи с предыдущими замечаниями обратим внимание на то, что один из способов обойти трудности, связанные с раз- размерностью, состоит в увеличении шага сетки. В задаче с двумя параметрами состояния можно позволить каждой пе- переменной принимать 100 различных значений, так как это
ПО МНОГОМЕРНЫЕ ПРОЦЕССЫ РАСПРЕДЕЛЕНИЯ [гл. II потребует всего 104 ячеек. Современным машинам (примерно I960 г.) доступны задачи с такими требованиями к памяти. Следует напомнить, что память, необходимая, собственно, для осуществления процесса динамического программирования, составляет приблизительно треть объема памяти машины бла- благодаря тому, что мы имеем дело одновременно со «старой» функцией дохода /iV _,(/?)» «новой» функцией дохода fN(p) и новой функцией политики хх(р). Если имеются несколько функций политики, множитель одна треть должен быть еще уменьшен. С другой стороны, если имеются три параметра состояния, то при 100 различных значениях каждой переменной потре- потребовалась бы память, способная хранить 10в значений, что превосходит возможности сегодняшнего дня. Но если исполь- использовать вместо ста только 20 различных значений для каждой переменной, то потребуется всего 8\ Ю3 значений, и задача будет еще в пределах наших возможностей. Следовательно, всегда можно работать с функциями многих переменных, «прореживая» область изменения каждой переменной. Конечно, ценой этого является меньшая точность. Впослед- Впоследствии мы обсудим, как избежать потери точности при таком подходе, в связи с методом последовательных приближений. 39. ПРИМЕНЕНИЕ МНОЖИТЕЛЯ ЛАГРАНЖА К ЗАДАЧЕ С ТРЕМЯ СКЛАДАМИ Как мы уже отмечали, если имеются три склада, то с вы- вычислительной точки зрения задачу можно рассматривать в тер- терминах последовательностей функций двух переменных. Но если ввести множитель Лагранжа, задача сведется к вычисле- вычислению последовательности функций одной переменной. Займемся теперь этим детально. Рассмотрим задачу с тремя складами, в которой имеется количество х{ на первом складе и неограниченные количества на втором и третьем складах: Dx\xx Px:rx D2: со Р2: г2 Da: оо
39] ПРИМЕНЕНИЕ МНОЖИТЕЛЯ ЛАГРАНЖА Ш Предположим, что стоимость перевозки такая же, как и выше, и что за каждую единицу, перевезенную из ?J, мы платим дополнительно X, и за каждую единицу, перевезен- перевезенную из D3, дополнительно платим 1. В этом случае общие издержки задаются выражением II S &J Ы + Х II*7 + 2 *ву- B.111) Первой мыслью читателя может быть мысль о том, чго сле- следовало бы использовать два множителя Лагранжа. Однако в этом не г необходимости, что видно из следующих сообра- соображений. Допустим, что А меняется до тех пор, пока для мини- минимизирующих значений xt; мы не будем иметь равенства N V Х2;=Х2. Тогда автоматически получим: N N 2 ху = хх + х% — I гу> B.112) 7=1 /-1 N т.е. У] дг3/ является фиксированной величиной, так как запасы равны спросу. Следовательно, при желании мы могли бы совсем исключить третий член в B.111). Положим fN(Xi) равной наименьшему значению функции B.111), где минимум берегся по области (a) 2j Xij = xh (b) X[j, x<2jy x-jj - B.113) Чтобы получить рекуррентное соотношение для fN, мы, как и раньше, удовлетворим сначала спрос в /V-м пункте потребления. Мы приходим к уравнению = min [g]N (xXA) + g2N (x,2N) + g3N /лг- I 0*1 ~ ^IA'I> B-1 1 4)
МНОГОМЕРНЫЕ ПРОЦЕССЫ РАСПРЕДЕЛЕНИЯ [ГЛ. II где RN — область, задаваемая условиями (а) -Кш + ^лг + ^зл'^л» (Ь) B.115) Минимизация по переменным x2N и хзм может быть вы- выполнена заранее в явном-виде или численно. Пусть Bn&XN ) где SN — новая область, определяемая условиями (a) X2N\X3N = rN Х1ЛР ] П \\7\ (b) X2N*X*N^°- ) Тогда рекуррентная формула B.114) примет вид fN(x\)= min Параметр X теперь изменяется между —оо и -|-оо, пока общее количество, перевозимое из D2, не станет равным дг2 — начальному уровню ресурсов в D2. Перевозимое из ?K количество будет тогда автоматически равняться лг3 = N V г х X 40. ПРИМЕР 1-ДВА СКЛАДА, ДЕСЯТЬ ПУНКТОВ ПОТРЕБЛЕНИЯ В первом численном примере — перевозка из двух складов в десять пунктов потребления — мы будем считать, что стои- стоимость перевозки представляет собой квадратичную функцию от перевозимого количества плюс «организационные» расходы. Под «организационными» расходами мы понимаем затраты, не зависящие от перевозимого количества и равные нулю, когда перевозка не производится. Стоимости приведены в таблице 2.6.
40] ПРИМЕР I 113 Таблица 2.6 Потреби- Потребители 1 2 3 4 5 б 7 8 9 10 И: организа- организационные расходы 1 10 8 \ склада 1 X 1,0 2,0 3,0 1,5 2,5 5,0 3,0 6,0 6,0 6,0 0,01 —0,01 -0,05 Из ( организа- циочные расходы 2 5 :клада 2 X 3,1 4,1 2,1 Ы 2,6 3,0 1,0 2,0 2,0 5,0 0,1 0,2 0,01 Спрос 10 25 45 15 5 15 20 15 10 20 Этой таблицей надо пользоваться следующим образом. Каждая функция gij(x) имеет вид gij (*) = аих + bux* + cif (х), B.119) где ctj(x) — то, что обычно называют «организационными» расходами, или «постоянными издержками»; сц(х) равно 0, если х = 0, и равно постоянной с и, если х^>0. Коэффициент при х ищется в столбце «х», коэффициент при х2 — в столбце «х2», «организационные» расходы — в столбце с соответствующим названием. Таблица 2.7 Потребители 1 2 3 4 5 6 7 8 9 10 Из склада 1 10 25 5 15 5 0 20 0 0 20 Из склада 2 0 0 40 0 0 15 0 15 10 0 Издержки 10,00 51,00 99,25 22,50 12,50 45,00 60,00 30,00 20,00 120,00 Накопленные издержки 10,00 61,00 160,25 182,75 195,25 240,25 300,25 330,25 350,25 470,25
114 МНОГОМЕРНЫЕ ПРОЦЕССЫ РАСПРЕДЕЛЕНИЯ [гл. и Так, стоимость перевозок количества х из склада 1 к потребителю 3 равна Зх-]-0,01х2; из склада 1 к потреби- потребителю 2 равна 1 -f- 2х, если х^>0, и 0, если х = 0. Предположим, что надо перевезти 100 единиц из склада 1 и 80 единиц из склада 2. Оптимальное решение приведено в таблице 2.7. Расчет на вычислительной машине Джонниак Корпорации RAND занял 2 минуты для вычислений и 4 минуты для вы- вывода результатов. 41. БЛОК-СХЕМА ПРОГРАММЫ ДЛЯ СЛУЧАЯ ДВУХ СКЛАДОВ (см. рис. 27) 42. ПРИМЕР И-ТРИ СКЛАДА, ДЕСЯТЬ ПУНКТОВ ПОТРЕБЛЕНИЯ Добавим к примеру I третий склад. Показатели стоимости его перевозок приведены в таблице 2.8. Т а б л и ц а 2.8 Потребители I 2 3 4 5 6 7 8 9 10 Организационные расходы 5 6 Из склада 3 X 7 3 9 1 1 9 4 3 5 6 Спрос 25 40 60 30 20 30 35 30 25 40 На складе 3 имеются 155 дополнительных единиц и, как показано выше, на такую же величину увеличен спрос. При использовании метода множителей Лагранжа выбор Х = 2,0 дает нужный результат. Оптимальное решение приведено в таблице 2.9.
42] nPIIMFP II 115 i k .. * - 4 K~7 max(O,Xj -27rH)-+x1M i hmfrmJ+fH-Tfa \0<ccAr ^7/Г-Г XjK + 1-X, * X;x>X/YF \ Hem ¦X7/f>X7? Hem Да a - fK(Xj) I r-~Xr*fa)\ i Ht V7/ Xf+7-+*Xf i l Да Печать. /*Hf» t i K> tVwox ? rx) | Hem j Рис. 27.
116 МНОГОМЕРНЫЕ ПРОЦЕССЫ РАСПРЕДЕЛЕНИЯ [гл. и Таблица 2.9 Потребители 1 2 3 4 5 6 7 8 9 10 Склад 1 25 40 5 0 0 0 30 0- 0 0 Склад 2 0 0 55 0 0 0 0 0 25 0 Склад 3 0 0 0 30 20 30 5 30 0 40 Издержки 25,00 81,00 130,75 30,00 20,00 65,00 110,00 96,00 50,00 240,00 Накопленные издержки 25,00 106,00 236,75 266,75 286,75 351,75 461,75 557,75 607,75 847,75 Расчет для каждого значения X занял 7 минут. 43. ПОСЛЕДОВАТЕЛЬНЫЕ ПРИБЛИЖЕНИЯ - I Одним из путей преодоления трудностей, связанных с раз- размерностью, является привлечение наиболее мощного из всех средств анализа — метода последовательных приближений. Схема метода в общих чертах выглядит следующим обра- образом. Для заданного функционального уравнения мы угадываем решение. Если предполагаемое решение не является истинным, то мы делаем поправку, определяемую самим функциональным уравнением, надеясь получить таким путем лучшее приближе- приближение к решению. Процесс продолжается до тех пор, пока мы или не получим решение или не подойдем к нему с требуе- требуемой степенью точности. Один из путей использования этого подхода состоит в следующем. Пусть заданное уравнение, решение которого мы ищем, имеет вид Т (и) = 0 B.120) и пусть уравнение S(u) = 0 легче решить. Запишем исходное уравнение в влде S(u) = S(u)—T(u), B.121) и пусть за первое приближение и0 взято решение уравне- уравнения S(u) = 0. Пусть следующее приближение их определяется из уравнения S{ih) = S{u,)-T{u,) B.122)
44] ПРИБЛИЖЕНИЕ В ПРОСТРАНСТВЕ ПОЛИТИК И7 и вообще (п -j- l)-e приближение получается из я-го прибли- приближения с помощью уравнения S(un+J = S(un)-T(un). B.123) Если S(u) выбрано подходящим образом и Т{и) обладает соответствующими свойствами, то последовательность [ип) будет сходиться к решению уравнения Т(и) = 0. Много работ посвящено применению этого метода к иссле- исследованию дифференциальных уравнений — как обыкновенных, так и в частных производных; кроме того, сделаны некоторые предварительные попытки применения его к функциональным уравнениям динамического программирования. Ссылки на соответствующие результаты и меюды даны в конце главы. Однако в соответствии с нашей общей программой мы будем действовать формально, просто демонстрируя различные подходы. Для иллюстрации конкретных применений метода будут приведены результаты некоторых численных расчетов. Имеется много разных путей применения основных идей, но эта область фактически еще не исследована. 44. ПРИБЛИЖЕНИЕ В ПРОСТРАНСТВЕ ПОЛИТИК Прототипом уравнения динамического программирования в общем виде является уравнение f(p) = max\g(p, q)+f(T(p, q))]. B.124) я Здесь р — параметр состояния, а д — решение. Классический подход к этому уравнению в обычной ситуации, когда нельзя найти точное аналитическое решение, заключается в угады- угадывании начальной функции fQ(p), а затем в определении по- последовательности функций с помощью рекуррентного соотно- соотношения <?))], л = 0, 1, ... B.125) Я В сбщем нетрудно установить сходимость этой последова- последовательности к решению уравнения B.124), кроме того, условия, обеспечивающие сходимость, обычно гарантируют также и единственность решения. Заметим, что в уравнение B.124) входят в действительности две неизвестные функции: функция дохода f(p)n функция
118 МНОГОМЕРНЫЕ ПРОЦЕССЫ РАСПРЕДЕЛЕНИЯ fГЛ. IT политики q (/?). Они, конечно, не являются независимыми, так как одна определяет другую. При заданной функции дохода /(//) функция политики определяется с помощью операции макси- максимизации правой части уравнения B.124), при заданной функ- функции политики q(p) функция /(/?) определяется как решение уравнения fiP) = g(P> q)+f(T(p, q)\ B.126) где q = q(p). Это уравнение обычно разрешается прямым итерированием. Признание равноценности двух функций/(/?) и q(p) дает нам возможность сильно увеличить сферу дейст- действия метода последовательных приближений. В дополнение к предложенному выше способу приближения с помощью соотношения B.125), мы можем рассмотреть новый тип прибли- приближения, представляющий особый интерес для теории много- многошаговых процессов решения, приближения в пространстве политик. Вместо того чтобы начинать с угадывания вида функции f(p)y мы будем начинать с угадывания вида функции q (/?). Соответствующая функция дохода /0 (р) определяется как решение уравнения /о (Р) = g{p> ?о) + /о (Т (р, <70)), B.127) где q^ = qo(p). Чтобы получить лучшее приближение, опре- определяем ql = ql(p) как функцию, максимизирующую выраже- выражение g(P.4)+MT(p,q)), B-128) а затем определяем /, (р) с помощью соотношения B-129) Продолжая таким образом, получим две последовательности: \Яп(Р)} и {fn(P)}- Во многих случаях легко доказать моно- монотонную сходимость В общем, приближение в пространстве политик тем или иным способом будет монотонным приближением. Интересным в этом понятии приближения является то, что оно может быть применено ко многим уравнениям, совсем не связанным с процессами решения. В таком виде он составляет основу метода, называемого квазилинеаризацией.
45] ПОСЛЕДОВ МЕЛЬНЫЕ ПРИБЛИЖЕНИЯ —II 119 На следующих страницах мы рассмотрим некоторые при- примеры приближения в пространстве политик и приведем чис- численные результаты. 45. ПОСЛЕДОВАТЕЛЬНЫЕ ПРИБЛИЖЕНИЯ - II Вернемся к процессу распределения, описанному в § 2. Мы хотим максимизировать функцию N fN(x,y)= 2 gi{xhyi) B.131) i = i при условиях N (а) ? *,=.*, *,^0, (Ь) 2^=^ Л 3*0. i= 1 Пусть jc° = {л:?}— начальное приближение для множества значений xv Это есгь приближение в «пространстве поли- политик». Затем определяем максимум функции лг Rx(x,y)= %Я(х1уд B.133) i= 1 по всем v,-, удовлетворяющим условию B.132,Ь), используя обычное одномерное рекуррентное соотношение /л'00= max [gN(x%9 ук)лг/к-\(у-уы)\, B.134) 0 где Л/ = 2, 3, ... и /iW = ^iW^). B.135) Этот процесс даег для каждого значения у множество значений y-v y°= {уЦ. Используя эти значения yt> которые мы называем у?у рассматриваем задачу максимизации функции N Sft(^^) B.136) i= 1 по всем значениям хь удовлетворяющим условию B.132, а). Эта задача решается с помощью рекуррентного соотношения, аналогичного B.134).
120 МНОГОМЕРНЫЕ ПРОЦЕССЫ РАСПРЕДЕЛЕНИЯ [гл. и Таким путем мы получаем множество значений xh x1 = \х\). Повторяя теперь этот процесс, получим пару последователь- последовательностей {хп}, {уп}у п=\, 2, ... Ясно, что последовательность значений {Rx(xn, уп))— монотонно возрастающая. Однако эта последовательность вовсе не обязана сходиться к абсо- абсолютному максимуму. Чтобы убедиться в этом, рассмотрим, например, функцию двух переменных z = g(x, у), изобра- изображаемую поверхностью вида, показанного на рис. 28. Рис. 28. Хотя абсолютный максимум находится в точке (х0, _у0), если мы примем за начальное приближение х = 0, то в опи- описанном выше процессе максимизации сначала по х, затем по _у, затем снова по х и т. д. мы застрянем в точке @, 0) — точке относительного максимума (см. § 51). С другой стороны, если начальное приближение взято достаточно близким к точке (х0, уп), то приведенный выше метод будет сходиться к требуемой точке (х0, у0). В любом случае этот метод может быть использован для проверки того, дает ли конкретный выбор значений х{ и у{ относительный максимум, и если нет, то имеет ли место сходимость к ближайшему относительному максимуму. Если исходить из начальных векторов {х°, у0}, достаточно удален- удаленных друг от друга, то мы можем ожидать, что таким путем определится целый ряд относительных максимумов и, как можно надеяться, среди них абсолютный максимум. Задача выделения абсолютного максимума из относитель- относительных максимумов является бичом в области оптимизации. Нельзя ожидать, что она будет когда-либо разрешена одним ударом. Можно надеяться лишь присоединять класс задач за классом к нашей коллекции «укрощенных зверей».
46] ПОСЛЕДОВАТЕЛЬНЫЕ ПРИБЛИЖЕНИЯ III 121 46. ПОСЛЕДОВАТЕЛЬНЫЕ ПРИБЛИЖЕНИЯ - III Рассмотрим теперь другое применение последовательных приближений, при котором мы используем непрерывность изменения значения, доставляющего максимум. Рассмотрим задачу, описанную в § 2, и отмегим зависи- зависимость положения максимизирующей точки от хну. Как можно показать на простом примере, эта зависимость не обязана быть равномерно непрерывной. Чтобы проил- люстрировать это, рассмо- рассмотрим одномерный случай. Предположим, что мы имеем функцию g(xly х2) от хх и х2, максимум которой мы хотим найти в области х{ -f- Ут Рис. 29. f = лг, х,, х2^ 0. Обозначим f (xx) = g(xh х — хх) и рас- рассмотрим график этой функции (рис. 29) при 0 ^х{^х. В этой области функция имеет два относительных максимума, один из которых является абсолютным максимумом. Если g Ут Рис. 30. X непрерывна по Х\ и х2, то при изменении х положение точки хт> доставляющей абсолютный максимум, будет изменяться вместе с х непрерывным образом до тех пор, пока мы не достигнем значения х, при котором график имеет вид, изо- изображенный на рис. 30. Для этого значения х относительные максимумы равны. Предположим теперь, что для близкого значения х зна- значение f(ym) больше, чем f(xm). В результате положение
122 МНОГСМПГНЫЬ ПРОЦЕССЫ РАСПРЕДЕЛЕНИЯ [гл. и абсолютного максимума резко перемещается из окрестное!и хт в окрестность ут. Следовательно, хт, рассматриваемая как функция от х, может иметь точки разрыва. Интересный пример такого рода появляется в связи с урав- уравнением h(x—y)+f(ay-\-b(x-y))\.B.W) max Если B.138) то функция f(x) является гладкой (рис. 31), в то время как функция политики у(х) имеет вид, изображенный на рис. 32. ю го Рис. 31. зо При некоторых значениях х происходи! резкое изменение в характере ошимальной политики. Мы копались в этих деталях для того, чтобы должным образом подготовить читателя к трудностям, содержащимся в методе, который будет теперь излагаться. Наша цель соче- сочетать описанный выше метод последовательных приближений с методом непрерывности, еще одним основным инстру- инструментом аналитика. Для дг = О единственным возможным выбором значений jt; является х,==0, i= 1, 2,... , Л/*). Следовательно, задача мак- максимизации по yt есть задача определения максимума функции RN@,y)= B.139) i =- 1 *) Автор возвращается к рассмотрению задачи B.131), B.132). (Прим. ред.)
461 последовательный, приближения — ш 123 задача, которую мы решаем с помощью последовательностей функций от одной переменной. Предположим на минуту, что 35 30 25 15 10 5 Ж <7 5 10 15 2G 25 30 35 40 * Рис. 32. она имеет единственное решение j/°={j/?}. Для того чтобы решить задачу с ограничениями вида B.140) где А — «малое*, мы исходим из начального приближения у°=\уЦ и приступаем к максимизации по xif как описано в предшествующих параграфах. Получив таким путем реше- решение, мы повторяем рассуждения для задачи с ограничениями B.141) где в качестве начального приближения по у берется jr«*-* решение задачи B.140).
124 МНОГОМЕРНЫЕ ПРОЦЕССЫ РАСПРЕДЕЛЕНИЯ [ГЛ. II Если мы чувствуем, что этот метод может потребовать слишком много времени, то мы можем использовать Прямой метод для решения задачи N N B.142) для некоторого большего значения х0 и области значений у> О ^у ^Уо, и начать процесс от этой точки. 47. КОЭФФИЦИЕНТЫ СВЯЗИ Иногда можно применять метод последовательных при- приближений другим способом. Допустим, что мы хотим макси- максимизировать функцию вида S ft (*,-)+ S hi (*i) +1 2 ki {*i> Уд B-ИЗ) i=\ i=\ /=1 при ограничениях 2 xt = х, 2 Уi =У> хи Уi ^ °- BЛ 44) «= 1 1=1 Здесь t — параметр, который предполагается принимающим все неотрицательные значения. Если ? = 0, задача легко ре- решается на языке двух последовательностей функций от одной переменной. Поэтому, чтобы решить задачу для малого t, скажем ? = Д, мы используем в качестве начального приближения решение {^2) у?}> полученное при t = 0. Приняв х°={х?}, мы можем упростить задачу поиска, ограничив свое внимание окрест- окрестностью точки у= \y°i}. Получив решение, соответствующее / = Д, мы используем его в качестве начального приближе- приближения для случая ? = 2Д, и т. д. Эту идею «развязывания» посредством подходящего при- приближения можно использовать многими способами; она пре- предоставляет массу возможностей для изобретательности и при- применения специальных методов.
48] ГРУБАЯ СЕТКА 125 48. ГРУБАЯ СЕТКА Другой путь приближения к решению задачи максимиза- максимизации состоит в первоначальном использовании грубой сетки. Допустим, что мы хотим максимизировать функцию B.145) при ограничении B.146) Пусть для начала х принимает только значения 0, 8, 28,..., где 8 велико по сравнению с нашим обычным шагом сетки. Аналогично, переменным xt мы позволяем принимать то же множество значений, хотя можно было бы считать xt при- принадлежащими также неко- некоторому другому множе- ству. В результате нахож- нахождение решения ускоряется в двух направлениях. Здесь подлежит табулиро- табулированию меньше значений и процесс поиска 36 Рис. 33. 4д О б Сд максимизирующего xN на каждом шаге короче. Таким образом, мы получаем множество максимизирующих значений {х;(х)}, i=l, 2, ..., N, затабулированных в точ- точках х = 0, 8, 28, ... Риск при использовании грубой сетки состоит в том, что можно пропустить очень острый абсолютный максимум и при- принять за него плоский относительный максимум. Рассмотрим, например, функцию, изображенную на рис. 33. Поиск при значениях х, равных 0, 8, 28, ..., дает отно- относительный максимум в точке 28, но не абсолютный максимум, лежащий между 48 и 58. Примеры, столь яркие, как этот, конечно, маловероятны. Тем не менее мы должны всегда иметь в виду такую возможность. Предположим, что мы на самом деле определили поло- положение максимума xi = xi(x) = xi(x\ 8) в пределах ± 8 от положения истинного максимума. Тогда, используя более мелкую сетку, например О, А, 2А, ..., где 8=10Аили 100А,
'26 МНОГОМЕРНЫЕ ПРОЦЕССЫ РАСПРЕДЕЛЕНИЯ [ГЛ. 1Г мы присоединяем ограничения xt(x\ 8) —8<*,(*)<*, (jc; 8)+ 8, l=\t 2, ..., N, B.147) где xt (x; Ь) — функции, определенные первоначально при бо- более грубой сетке. Ограничения такого типа уменьшают требования к объему памяти и существенно сокращают время на определение мак- максимума процессом поиска. На применение такой идеи мы будем ссылаться в § 11 главы III. 49. ПОСЛЕДОВАТЕЛЬНЫЕ ПРИБЛИЖЕНИЯ В ЗАДАЧЕ ХИЧКОКА - КУПМАНСА Вернемся теперь к задаче Хичкока — Купманса вооруженные новыми методами. Мы видели, что процесс с М складами можно рассматривать непосредственно в терминах функций от Ж — 1 переменных и с помощью множителей Лагранжа — в терминах функций от М — k переменных. Покажем теперь, каким образом можно использовать ме- метод последовательных приближений для анализа этой задачи с помощью последовательностей функций от одной пере- переменной. Чтобы добиться этого, поступим следующим образом. Прежде всего, пусть запасы на складках D3, D4, ..., Dm распределены так, чтобы любым способом удовлетворить часть требований в точках спроса. Тогда оставшиеся запасы на D{ и D2 распределяются таким образом, чтобы удовлетво- удовлетворить оставшимся требованиям при минимальных издержках. Как мы знаем, решение такой задачи сводится к вычисле- вычислению последовательностей функций от одной переменной и таким образом может рассматриваться как стандартная опе- операция. Это — первый шаг в методе последовательных при- приближений. Далее мы используем на складах Dg, ..., Dm те же распределения, что и выше, на складе Д — распределение, определяемое процедурой минимизации, а на складах D2 и D3 выбираем распределения так, чтобы удовлетворить оставшимся требованиям с помощью процедуры минимизации. Это — вто- второй таг.
51] ПРИМЕР Т — ОТНОСИТЕЛЬНЫЙ МИНИМУМ 127 Далее мы фиксируем распределения на складах D5, ..., Ди> A> как выше, используем на складе D2 распределение, определяемое предшествующей минимизацией, а затем решаем новую задачу минимизации стоимостей перевозки из складов ?K и D4. Затем процесс продолжается таким же образом. 50. СХОДИМОСТЬ Прежде всего ясно, что последовательность функций ми- минимальных издержек должна сходиться, так как издержки на каждом шаге вычислений не возрастают. Однако неясно, к чему сходится этот процесс, и фактически нетрудно по- построить примеры, в которых минимум таким путем не до- достигается. В обоих приведенных далее примерах наш метод заклю- заключается в том, что сначала фиксируется сюлбец jc3;- при един- единственном условии, чго Vx3y = x3, но не х3у^>Гу. В примере I j мы распределили запас со склада 3 довольно равномерно по точкам спроса. В примере II мы последовательно удовлет- удовлетворяем спросы каждого из потребителей до iex пор, пока не исчерпаем запас на складе 3. Затем мы вычитаем из ве- величин спроса всех потребителей полученные ими количества груза и решаем оставшуюся задачу с двумя источниками. Полученное решение мы используем при определении х1;- во второй итерации. Это решение определяет х2;- для третьей итерации, после которой мы повторяем цикл, фиксируя х3;-. Процесс продолжается до тех пор, пока не получится устой- устойчивое распределение во всех трех типах подпроблем. В приведенных ниже примерах мы рассматриваем случай трех складов и десяти точек спроса. 61. ПРИМЕР I-ОТНОСИТЕЛЬНЫЙ МИНИМУМ Рассмотрим случай, когда каждая из функций gtj имеет вид gij (х) = аих + Ьих* + си (х), B.148) где Cij{x) — «организационные» расходы, или фиксированные издержки, равные нулю, если лг = О, и постоянной ciJy если л;>0.
128 МНОГОМЕРНЫЕ ПРОЦЕССЫ РАСПРЕДЕЛЕНИЯ [ГЛ. II Коэффициенты atj приведены в столбце (х) таблицы 2.10, а Ьи — в столбце (л:2). Таблица 2.10 Пот- реби- ребитель 1 2 3 4 5 6 7 8 9 10 Источник §3 з о я о. 11 + 1,0 + 10,0 +8,0 -1,0 -2,0 -3,0 -1,5 -2,5 -5,0 -3,0 +6,0 +6,0 +6,0 1 +0,01 —0,01 —0,05 Источник ц а о is. аЗ о в +2,0 +5,0 л: +3,1 -4,1 -2,1 + 1,1 +2,6 +3,0 + 1,0 +2,0 +2,0 +5,0 2 Х2 +0,10 +0,20 +0,01 Источник 3 is Я X т v X °" орга ные +5,0 +6,0 х + 7,0 +3,0 +9,0 + 1,0 + 1,0 +2,0 +4,0 +3,0 + 5,0 +6,0 Спрос 25 40 60 30 20 30 35 30 25 40 335 *! — запас на складе 1 = 100, го — запас на складе 2= 80, о — запас на складе 3=155. Результаты, полученные методом последовательных при- приближений, приведены ниже в таблице 2.11. Таблица 2.11 1 2 3 4 5 6 7 8 9 10 Потитика 10 25 5 15 5 0 20 0 0 20 0 0 40 0 0 15 0 15 10 0 Затраты - 15 15 15 15 15 15 15 15 15 20 = 1126,25 Политика 10 25 5 15 5 0 20 0 0 20 15 0 55 0 0 0 0 0 10 0 Затраты = 2 0 15 0 15 15 30 15 30 15 20 = 966,00 Политика 10 40 5 0 0 0 35 0 0 10 15 0 55 0 0 0 0 0 10 0 Затраты = = 3 0 0 0 30 20 30 0 30 15 30 "921,25 Политика 25 40 0 0 0 0 35 0 0 0 0 0 60 0 0 0 0 0 10 10 Затраты 4 0 0 0 30 20 30 0 30 15 30 — == 874,00
521 ПРИМЕР II — АБСОЛЮТНЫЙ МИНИМУМ 129 Продолжение табл. 2.11 1 2 3 4 5 6 7 8 9 10 Политика 25 40 0 0 0 0 35 0 0 0 Затраты 0 0 60 0 0 0 0 0 20 0 — 5 0 0 0 30 20 30 0 30 5 40 = 853,00 Политика 6 25 40 0 0 0 0 35 0 0 0 0 0 60 0 0 0 0 0 20 0 Затраты = = 0 0 0 30 20 30 0 30 5 40 853,00 Политика 25 40 0 0 0 0 35 0 0 0 0 0 60 0 0 0 0 0 20 0 Затраты = 7 0 0 0 30 20 30 0 30 5 40 = 853,00 Точное 25 40 5 0 0 0 30 0 0 0 } решение 0 0 55 0 0 0 0 0 25 0 Затраты = i 0 0 0 30 20 30 5 30 0 40 $47,75 52. ПРИМЕР II-АБСОЛЮТНЫЙ МИНИМУМ Рассмотрим теперь случай, когда все функции gtj (х) вы- выпуклые *) и имеют вид аих-\- bijX*. Числовые данные в при- примере сведены в таблицу 2.12. Таблица 2.12 о о 1 о С 1 9 3 4 5 6 7 8 9 10 Источник §3 II (г а So. а\3 о в л: 1,0 2,0 3,0 1,5 2,5 5,0 3,0 6,0 6,0 6,0 1 0,20 0,06 0,01 0,05 0,01 0,05 Источник i * !§.. а 2 о в л: 3,1 4,1 2,1 1,1 2,6 3,0 1,0 2,0 2,0 5,0 2 0,10 0,10 0,20 0,01 Источник |з •шиз, : рас ох X 7,0 3,0 9,0 1,0 1,0 2,0 4,0 3,0 5,0 6,0 3 *2 0,04 0,20 0,10 Спрос 25 40 60 30 20 30 35 30 25 40 \\ — запас на складе 1 = 100, х2 — запас на складе 2 = 97, xs — за- запас на складе 3=138. *) В этом случае любой относительный минимум является абсо- абсолютным. (Прим. ред.) б Р. Беллман, С. Дрейфус
130 МНОГОМЕРНЫЕ ПРОЦЕССЫ РАСПРЕДЕЛЕНИЯ [гл. II Результаты итераций приведены в таблице 2.13. Таблица 2.13 1 2 3 4 5 6 7 8 9 10 Политика 0 0 0 17 11 0 32 0 0 40 Затраты 0 0 0 0 9 30 3 30 25 0 1 25 40 60 13 0 0 0 0 0 0 1535,249 Политика 2 0 0 0 17 И 0 32 0 0 40 4 0 60 0 0 0 0 20 13 0 Затраты = = 1 21 40 0 13 9 30 3 10 12 0 1,25 Политика 3 15 21 0 0 13 0 35 0 0 16 4 0 60 0 0 0 0 20 13 0 6 19 0 30 7 30 0 10 12 24 Затраты = = 1040,55 Политика 4 12 21 7 0 11 0 33 0 0 16 7 0 53 0 2 0 2 20 13 0 6 19 0 30 7 30 0 10 12 24 Затраты = = 1035,439 i 1 2 3 4 5 6 7 8 9 10 1олитика 5 12 21 7 0 11 0 33 0 0 16 Затрать 4 0 53 0 0 0 0 20 20 0 9 19 0 30 9 30 2 10 5 24 = 1031,24 Поли 1ика 15 21 7 0 13 0 35 0 0 9 4 0 53 0 0 0 0 20 20 0 Затраты = 6 6 19 0 30 7 30 0 10 5 31 = 1026,44 Политика 12 21 12 0 13 0 33 0 0 9 7 0 48 0 0 0 2 20 20 0 Затраты = 7 6 19 0 30 7 30 0 10 5 31 = 1022,089 Политика 8 12 21 12 0 13 0 33 0 0 9 4 0 48 0 0 0 0 20 25 0 Затраты = 9 19 0 30 7 30 2 10 0 31 Т020,69
52] ПРИМЕР II — АБСОЛЮТНЫЙ МИНИМУМ 131 Продолжение табл. 2.13 Политика 9 1 2 3 4 5 6 7 8 9 10 15 21 12 0 13 0 35 0 0 4 Затраты — 4 0 48 0 0 0 0 20 25 0 = 1016, 6 19 0 30 7 30 0 10 0 36 89 Политик; 12 21 17 0 13 0 33 0 0 4 7 0 43 0 0 0 2 20 25 0 Затраты = 10 6 19 0 30 7 30 0 10 0 36 = 1013,04 Политик; 12 21 17 0 13 0 33 0 0 4 6 0 43 0 0 0 1 22 25 0 Затраты = 1 11 7 19 0 30 7 30 1 8 0 36 = 1012,44 Политик; 15 21 17 0 13 0 34 0 0 0 6 0 43 0 0 0 1 22 25 0 Затраты = = 12 4 19 0 30 7 30 0 8 0 40 009,64 I 1 2 3 4 5 6 7 8 9 10 Политика 1 13 21 20 0 13 0 33 0 0 0 8 0 40 0 0 0 2 22 25 0 Затраты = 3 4 19 0 30 7 30 0 8 0 40 = 1007,85 Почитика 13 21 20 0 13 0 33 0 0 0 7 0 40 0 0 0 2 23 25 0 Затраты = 14 5 19 0 30 7 30 0 7 0 40 = 1007,75 Потитика 14 20 20 0 13 0 33 0 0 0 7 0 40 0 0 0 2 23 25 0 Затраты = 15 4 20 0 30 7 30 0 7 0 40 = 1007,25 Политика 16 13 20 21 0 13 0 33 0 0 0 8 0 39 0 0 0 2 23 25 0 Затраты = 4 20 0 30 7 30 0 7 0 40 006,76
132 МНОГОМЕРНЫЕ ПРОЦЕССЫ РАСПРЕДЕЛЕНИЯ [гл. II Продолжение табл. 2.13 Политика 17 Политика 18 Политика 19 Политика 20 13 20 3 21 4 5 б 7 8 9 10 0 13 0 33 2 0 23 0 25 0 8 4 О 20 39 О О 30 О 7 О 30 2 О 7 О О 40 Затраты = = 1С0б,7б 14 8 3 20 0 20 21 39 0 0 0 30 12 0 8 0 0 30 33 2 0 0 23 7 0 25 0 0 0 40 Затраты = = 1006,41 13 9 3 20 0 20 22 38 О О 0 30 12 0 8 О 0 30 33 2 О О 23 7 О 25 О О 0 40 Затраты = = 1006,14 13 8 4 20 0 20 22 38 О О 0 30 12 0 8 О 0 30 • 33 2 О О 24 6 О 25 О О 0 40 Затраты = = 1006,04 Политика 21 1 2 3 4 5 6 7 8 9 10 14 19 22 0 12 0 33 0 0 0 Затраты 8 0 38 0 0 0 2 24 25 0 — 3 21 0 30 8 30 0 6 0 40 1005,74 Политика 13 19 23 0 12 0 33 0 0 0 9 0 37 0 0 0 2 24 25 0 Затраты = 22 3 21 0 30 8 30 0 6 0 40 = 1005,49 Политик 13 19 23 0 12 0 33 0 0 0 9 0 37 0 0 0 2 24 25 0 Затраты = з 23 3 21 0 30 8 30 0 6 0 40 = 1005,49 Политика 24 14 18 23 0 12 0 33 0 0 0 9 0 37 0 0 0 2 24 25 0 Затраты = 2 22 0 30 8 30 0 6 0 40 ~С05,39
53] СТОХАСТИЧЕСКАЯ ИТЕРАЦИЯ 133 Продолжение табл. 2.13 1 2 3 4 5 6 7 8 9 10 Политика 13 18 24 0 12 0 33 0 0 0 10 0 36 0 0 0 2 24 25 0 Затраты = 25 2 22 0 30 8 30 0 6 0 40 = 1005,36 Политика 13 18 24 0 12 0 33 0 0 0 9 0 36 0 0 0 2 25 25 0 Затраты = 26 3 22 0 30 8 30 0 5 0 40 = 1005,26 Политика 13 18 24 0 12 0 33 0 0 0 9 0 36 0 0 0 2 25 25 0 Затраты = 27 3 22 0 30 8 30 0 5 0 40 = 1005,26 Политика 28 13 18 24 0 12 0 33 0 0 0 9 0 36 0 0 0 2 25 25 0 Затраты = = 1 3 22 0 30 8 30 0 5 0 40 005,26 Интересно отметить, что хотя точность в пределах 4%. достигается уже на третьей итерации, для получения абсо- абсолютного минимума потребовалось двадцать восемь итераций. Кроме того, если обратиться к двадцать второму и двадцать третьему шагам, то мы видим, что не имеется никакого улуч- улучшения, когда зафиксировано распределение на первом складе, но тем не менее при фиксировании распределения на втором складе улучшение имеется. 53. СТОХАСТИЧЕСКАЯ ИТЕРАЦИЯ Выше мы действовали заранее определенным циклическим образом, в котором мы выбирали склады (Д, Д), (Db D3) и т. д. Легко построить примеры, когда при таком способе мы приходим к угловым точкам и относительным минимумам. Поэтому может оказаться более целесообразным выбор двух складов на каждом шаге случайным образом. В более общем случае, когда имеется много складов, не- необходимо перебрать все возможные комбинации по два склада, чтобы гарантировать, что мы достигли, абсолютного минимума.
134 МНОГОМЕРНЫЕ ПРОЦЕССЫ РАСПРЕДЕЛЕНИЯ [ГЛ. II Все же и тогда в пространствах большого числа измерений можно ожидать ситуаций, когда даже такой тип «субмини- «субминимизации» не будет гарантировать достижения абсолютного минимума. 54. ВЫВОДЫ На предшествующих страницах нашей целью было обсу- обсудить новые задачи, вызываемые многомерностью. В некоторых случаях мы можем применять стандартный подход при усло- условии, если в нашем распоряжении имеется современная вы- вычислительная машина и мы готовы расходовать определенное время и усилия. В других случаях требования к памяти зна- значительно превосходят возможности наиболее мощных из со- современных вычислительных машин. Для того чтобы справиться с многомерными задачами, воз- возникающими при более реалистичном описании экономических процессов распределения, мы должны привлечь более мощные методы классического анализа — метод последовательных при- приближений и метод непрерывности. Мы обсудили несколько примеров, чтобы показать, что эти методы можно применять и что в ряде случаев они будут давать удовлетворительные результаты. Далее мы перейдем к рассмотрению дополнительных примеров, ко- которые можно использовать отдельно или совместно с уже рассмотренными. Следует ожидать, что очень сложные про- процессы потребуют привлечения всех этих средств в совокуп- совокупности, вместе с использованием классического анализа, ли- линейного и нелинейного программирования и т. д. При рассмотрении этих процессов мы встретимся с за- задачей метапрограммирования, в которой одной из главных трудностей будет определение того, какими математическими методами пользоваться и в каком порядке. Все они близко связаны с понятием адаптивных процессов управления, к ко- которому мы снова обратимся в главе VIII. 55. ЗАДАЧА О «ТРУДНОЙ ПЕРЕПРАВЕ» В качестве продолжения анализа, проведенного в § 32, где рассматривалась транспортная задача Хичкока—Купманса, рассмотрим одну математическую головоломку, которая часто
57] функциональные урчвнения 135 встречается в математической литературе развлекательного характера. Типичный вопрос состоит в следующем. «Группа, состоящая из трех людседов и трех миссионе- миссионеров, пытается переправиться через реку. Имеется лодка, в ко- которую помещается два человека и которой можно управлять с помощью любой комбинации людоедов и миссионеров из одного или двух человек. Если количество людоедов по одну сторону реки или в лодке превосходит в какой-нибудь момент число миссионеров, то людоеды предаются своим кровожадным инстинктам и пожирают миссионеров. Каким образом нужно составить план перевозки, чтобы быть уверенным, что группа людоедов и миссионеров благополучно пересечет реку?» В следующем параграфе мы сформулируем задачу в более общем виде, а затем решим ее методом функциональных уравнений. 56. ОБЩАЯ ЗАДАЧА Рассмотрим теперь более общую ситуацию, когда mi исходим из того, что по одну сторону реки находится т{ людоедов и п{ миссионеров, а по другую сторону /я2 людо- людоедов и щ миссионеров. Пусть правило, предотвращающее пожирание миссионеров, заключается соответственно в выпол- выполнении ограничения Ri(mh n^^O на одном берегу, ограни- ограничения /?2(/#2> я2)^0 на другом и R^(m, n)^0 на лодке, вмещающей не более k человек. Если заданы произвольные целые числа ть пъ тъ пъ то совсем не ясно, когда возможен план безопасной перевозки. Поэтому мы начнем с рассмотрения следующей задачи. Если исходить из заданных начальных данных, то каково максималь- максимальное число людей, которых можно перевезти с одного берега, скажем с первого берега на другой, не подвергая кого-либо из миссионеров опасности быть съеденным? 57. ФУНКЦИОНАЛЬНЫЕ УРАВНЕНИЯ Поскольку общее число людоедов и миссионеров остается в процессе перевозки постоянным, то состояние системы в любой момент определяется введенными выше числами т^ и nL.
136 МНОГОМЕРНЫЕ ПРОЦЕССЫ РАСПРЕДЕЛЕНИЯ |ГЛ. И Введем функцию fN(mv n{)—максимальное число людей на втором берегу после N шагов, если мы начинаем с тх людоедов и пх мис- B.149) сионеров на первом берегу и соответственно с ш_, и п2 на втором берегу. Предположим, что на любом шаге допустимо не возвра- возвращать ни одного человека на первый берег со второго, если все уже находятся на втором берегу. Один шаг процесса состоит из перевозки хх людоедов и ух миссионеров с первого берега на второй, а затем из обрат- обратной перевозки х2 людоедов иу% миссионеров на первый берег. Используя принцип оптимальности, получим для /V^2 рекуррентное соотношение B.150) где величины хх, х%, уь у,2 подчинены ограничениям (b) 0 ^ Хч ^ т% -(- хХу (c) *,+.*<*, \^v *\3 v^l> Ух) ^^ ^> *\3 \X<2f У%) ^-" ^i ^ /? (m X n v-»0 \ BЛ51) ^e) t\x \jTix — xXy nx—yx) ^ u, (f) Rx (mx — xx-\- xb nx —yx -гуд ^ 0, (h) Ri(^i-{-Xi — xb n<2 -{- yx—у%)^0. Множества хх, jc2, ylt уъ удовлетворяющие этим ограни- ограничениям, существуют, так как по предположению им удовлет- удовлетворяют значения хх = х^=ух=у^= 0. Для N= 1 имеем: f\{mx, nx) = max [(m2 -\- хх) -\- (щ -\~У\)\ B.152) где хх, ух подчинены написанным выше ограничениям. 58. ОБСУЖДЕНИЕ Для небольших значений N и ть ть пъ щ значений /лг(/^!, пх) можно легко вычислить вручную. Во многих слу- случаях условия B.151) столь ограничительны, что имеется един-
59] ЧИСЛЕННОЕ РЕШЕНИЕ 137 ственная возможная политика, которая автоматически будет оптимальной. Указанным выше способом мы одновременно определяем минимальнее число перевозок, необходимое для перемещения всех людей с одного берега на другой, всякий раз, когда это возможно. Чтобы получить это минимальное число, мы про- продолжаем процесс до тех пор, пока не получится значение N, для которого /дг = Щ -{- /#2 ~г ni ~f" ni- 59. ЧИСЛЕННОЕ РЕШЕНИЕ Проиллюстрируем приведенный выше алгоритм на при- примере задачи, сформулированной в § 55. Сначала устанавливаем, что для ЛАшагового процесса воз- возможны только определенные начальные состояния. Все другие начальные состояния приводят к немедленному людоедству. Если мы обозначим через (?, j) состояние, при котором / миссионеров и j людоедов находятся на первом берегу, а 3—i миссионеров и 3 —j людоедов на втором берегу, то воз- возможны только следующие состояния: @, 1), A, 1), C, 1), (О, 2), B, 2), C, 2), @, 3) и C, 3). Используем алгоритм, данный в § 57, для вычисления значений Л @, 1) = б, ЛA, 1) = б, /,C, 1) = 2, Л @, 2) = 6, Л B, 2) = 3, Л C, 2) = 2, Л @, 3) = 4, fx C, 3) = 1. Замечая, что если fk (/', j) = б, iofk,rl (i, У) = 6 для /= 1, 2,..., мы итерируем рекуррентное соотношение для всех значений, не равных б, и получаем: ДC, 1) = 3, М2, 2) = 4, ДC, 2) = 2, /,@, 3)==6, /iC, 3) = 2. Продолжая процесс, получим: /зC, 1) = 4, ЛB, 2) = 6, /3C, 2) = 3, /4C, 2) = 4, /4C, 3) = 3, /вC, 2) = 6, /зC, 3) = 2, ДC, 1) = 6, /,C, 3) = 4, /iC, 3) = 6.
138 МНОГОМЕРНЫЕ ПРОЦЕССЫ РАСПРЕДЕЛЕНИЯ [ГЛ. И Следовательно, требуемое число перевозок, если начинать с трех людоедов и трех миссионеров на первом берегу, равно шести. Оптимальная политика легко определится, если за- запоминать максимизирующее решение на каждом шаге. КОММЕНТАРИИ И БИБЛИОГРАФИЯ Задача максимизации или минимизации функции N переменных является одним из основных вопросов анализа, и вполне естествен- естественно, что на [ее решение были направлены огромные усилия. По- Поскольку нас интересуют только функции весьма специального вида, мы не обращаем никакого внимания на какие-либо из существую- существующих общих методов. Классический метод «наискорейшего спуска» описан в работе: Г. С. Rosen bloom, The method of steepest descent, Numerical Analysis, Proceedings of the Sixth Symposium in Applied Ma- Mathematics, McGraw-Hill Book Co., Inc., New York, 1956. Здесь можно найти много ссылок. Об этом методе см. также статью: J. Т о d d, Motivation for working in numerical analysis, Comm. Pure Appl. Math., vol. 13, 1953, pp. 97—116. § 14. Строгое рассмотрение фундаментального понятия выпук- выпуклости можно найти в книгах: Т. Bonessen and W. F e n с h e 1, Theorie der Konvexen Korper, Ergebnisse der Math., vol. 3, 1934; H. G. E g g 1 e s t о n, Convexity, Cambridge Tracts., No. 47, Cam- Cambridge University Press, Cambridge, 1958. С некоторыми аналитическими применениями методов этого пара- параграфа можно познакомиться по книге: Е. F. Beckenbach and R. Bellman, Inequalities, Ergebnisse der Math., Springer, Berlin, 1961. Мы пользуемся двойственностью евклидовой геометрии для по- получения дальнейшего упрощения процессов. Это свойство будет снова использовано при изучении вариационного исчисления. § 15. Об интерпретации множителя Лагранжа в качестве «цены» см. книгу П. Самуэльсона, упомянутую в конце главы I, а также приложение II, написанное С. Дрейфусом и М. Фреймером. § 16. Использование множителя Лагранжа в динамическом про- программировании впервые дано в статье: R. Bellman, Dynamic programming and Lagrange multipliers, Proc. Nat. Acad. Sci. USA, vol. 42, 1956, pp. 767—769.
КОММЕНТАРИИ И БИБЛИОГРАФИЯ 139 § 20. Приведенные здесь рассуждения заимствованы из работы: R. Bellman, I. Glicksberg and О. Gross, Some Aspects of the Mathematical Theory of Control Processes, The RAND Corporation, Report R-313, 1958, pp. 49—50 [русский перевод: P. Б е л л м а н, И. Г л и к с б е р г, О. Гросс, Некоторые воп- вопросы математической теории процессов управления, ИЛ, 1961]. § 21. Эти результаты имеются в работе: S. Dreyfus, Dynamic Programming Solution of Allocation Pro- Problems, The RAND Corporation, Paper P-1083, May 9, 1957. § 27. Приведенные результаты были опубликованы в статье: R. Bellman and S. Dreyfus, Dynamic programming and the reliability of multicomponent devices, Operations Research, vol. 6, 1958, pp. 200—206. § 32. Транспортной задаче Хичкока—Купманса посвящено огромное число работ. Первое утонченное математическое изучение задач транспортировки и задачи общего линейного программирова- программирования выполнено Л. В. Канторовичем в 1939 г. Его работа «Матема- «Математические методы в организации и планировании производства», Изд. ЛГУ, 1939 (повторная публикация в сборнике «Применение матема- математики в экономических исследованиях», Соцэкгиз, 1959) недавно пе- переведена на английский язык. См. также F. L. Hitchcock, The distribution of a product from several sources to numerous localities, J. Math. Physics, vol. 20, 1941, pp. 224—230. R. Dorfman, P. A. Samuelson and R. S о 1 о w, Linear Pro- Programming and Economic Analysis, McGraw-Hill Book Co., Inc., New York, 1960, Chapter 5. G. B. D a n t z i g, Application of the simplex method to a transpor- transportation problem, Activity Analysis of Production and Allocation, J. Wiley and Sons, New York, 1951, Chapter 23. T. S. M о t z k i n, The assignment problem, Proc. Sixth Symposium in Applied Mathematics, vol. 6, 1953. Т. С Koopmans and S. R e i t e r, A model of transportation, ibid., Chapter 14. M. M. Flood, On the Hitchcock distribution problem, Pacific J. Math., vol. 3, 1953, pp. 369—396. L. Ford and D. R. Fulkerson, Maximal flow through a net- network, Canadian J. Math., vol. 8, 1.956, pp. 399—404. T. F u k a o, A computational method for dynamic linear program- programming, J. Operations Research Soc. Japan, vol. 2, 1960, pp. 98— 113. F. С. Т о s с a n o, An Engineering Analysis of Cargo — handling— IX, Depaitment of Engineering, University of California at Los Angeles, 1960.
140 МНОГОМЕРНЫЕ ПРОЦЕССЫ РАСПРЕДЕЛЕНИЯ [гл. II W. S z w а г с, The initial solution of the transportation problem, Operations Research, vol. 8, I960, pp. 727-729. В перечисленных выше статьях используются методы линейною программирования или итеративные методы, построенные специаль- специально для этой конкретной задачи. Аналитические рассуждения в тек- тексте заимствованы из статьи: R. Bellman, Notes on the theory of dynamic programming: tran- transportation models, Management Science, vol. 4, 1958, pp. 191—195. В силу интереса, который представляет сама задача, а также с целью демонстрации силы метода последовательных приближений в даль- дальнейшем были получены численные результаты. § 43. Систематическое изложение метода последовательных при- приближений дано в статье: R. Bellman, Funciional equations and successive approximations in linear and nonlinear programming, Naval Research Logist. Q., vol. 7, I960, pp. 63-83. .О некоторых других аспектах метода последовательных приближе- приближений см. статью: R. Kalaba, On nonlinear differential equations, the maximum operation and monotone convergence, J. Math, and Mech., vol. 8, 1959, pp. 519—573. Здесь систематически использован метод квазилинеаризации, истоки которого лежат в работе Чаплыгина. § 44. Дальнейшее рассмотрение метода приближений в про- пространстве политик дано в книгах: R. Bellman, Dynamic Programming, Princeton University Press, Princeton, New Jersey, 1957 [русский перевод: Р. Беллман, Динамическое программирование, ИЛ, I960]. R. Bellman, Adaptive Control Processes. A Guided Tour, Prin- Princeton University Press, Princeton, New Jersey, 1961. [русский перевод: Р. Беллман, Процессы регулирования с адаптацией, М., Изд-во «Наука», 1964]. § 46. Первоначальный вариант рис. 32, помещенный на стр. 45 книги Р. Беллмана «Динамическое программирование», неверен. Мы благодарны А. Е. Брайсону за обнаружение ошибки. § 48. Метод динамического программирования выгодно сочетать с градиентным методом или с методом Ньютона для решения систем нелинейных уравнений; это позволяет повысить быстроту и точ- точность численного решения. Успех градиентных методов, метода Ньютона и других итера- итеративных методов обычно зависит от того, начат ли процесс доста-
КОММЕНТАРИИ И БИБЛИОГРАФИЯ 141 точно близко от экстремума. Это можно часто обеспечить, исполь- используя метод функциональных уравнений с грубой сеткой. В качестве альтернативы мы можем измельчать сетку по мере достатчно близкого приближения к экстремуму. Этот метод дей- действует вполне хорошо при исследовании некоторых задач из стати- статистической механики. См. работу: R. Kikuchi and J. W. Calm, Theory of Domain Walls in Or- Ordered Structures—II. Pair Approximations for Nonzero Tempera- Temperatures, Hughes Research Laboratories, Research Report, No. 177, 1961. Некоторые математические постановки задач теории организа- организации в рамках процессов принятия решений даны в работах: J. Marschak, Towards an economic theory of organization and information, Chap. 14 in Decision Processes, Thrall, Davis and Coombs, eds., John Wiley and Sons, New York, 1954. J. Marschak, Elements for a theory of teams, Management Science, vol. 1, No 2, 1954, pp. 127—137. R. R a d n с r, The linear team: an example of linear programming under uncertanit\, Proc. Second Symposium in Linear Program- Programming, National Bureau of Standards, Washington, 1955. R. R a d n e r, The application of linear programming to team deci- decision problems, Management Science, vol. 5, No 2, 1959, pp. 143— 150. С. В. М с G u i r e, Some team models of a sales organization, Ma- Management Science, vol. 7, 1961, pp. 101—130. Построение математических моделей обсуждается в работах: R. В е 11 m а п, С. С 1 а г к, С. Craft, D. М а 1 с о 1 m and F. M. R i с с i a r d i, On the construction of a multistage, multi-person business game, Operations Research, vol. 5, 1957, pp. 469—503. R. Bellman and P. Brock, On the concepts of a problem and problem-solving, Amer. Malh. Monthly, vol. 67, 1960, pp. 119-134. Анализ общей проблемы распределения ресурсов содержится в работах: К. J. Arrow and L. H u r w i с z, Decentralization and computa- computation in resource allocation, Essays in Economics and Economet- Econometrics, University of North Carolina Press, pp. 34 —104. H F. К а г г с m a n, Programming the supply of a strategic mate- material, Part I. A nonstochastic model, Naval Research Logist. Q., vol. 7, 1960, pp. 261—279. A. N о m о t o, Exploration sequentielle, Stogiaire de Cooperation Technique du Governement Francais de la Societe d'Electronique et d'Automatisme, 1961. §§ 55—58. Подход к задаче о «тр\дной переправе» был дан Б. Шварцем в работе:
142 МНОГОМЕРНЫЕ ПРОЦЕССЫ РАСПРЕДЕЛЕНИЯ [ГЛ. II В. Schwartz, An anahtic method for difficult crossing puzzles, Math. Mag., vol. 34, 1961, pp. 187—193, основанной на теории графов и топологии. Приведенные здесь ре- результаты взяты из статьи: R. Bellman, Dynamic programming and difficult crossing puzz- puzzles, Math. Mag., vol. 35, 1962. Аналогичные задачи, включающие переливание различного рода жидкостей из одного типа сосудов в другой для получения смеси требуемого типа, можно рассматривать методами динамическою программирования. См. задачу 38 на стр. 124 книги Р. Беллмана «Динамическое программирование». Дополнительная литература Идеи, высказанные в § 24, весьма близки к методике исполь- использования «объективно обусловленных оценок», предложенной в книге: Л. В. Канторович, Экономический расчет наил>чшего использования ресурсов, Изд-во АН СССР, 1959. Первая математическая формулировка транспортной задачи в узком смысле была дана в работе: А. Н. Толстой, Методы устранения нерациональных перево- перевозок при планировании, «Социалистический транспорт», 1939, № 9. По поводу современного состояния проблемы см. сборник «Ма- «Математические методы в планировании и эксплуатации на транс- транспорте», Труды научного совещания о применении математических методов в экономических исследованиях и планировании, т. V, Изд-во АН СССР, 1961. Метод С. А. Чаплыгина, содержащий исходные положения так называемой квазилинеаризации, изложен в учебнике: Г. И. Петровский, Лекции по теории обыкновенных диф- дифференциальных уравнений, изд. 4, М.—Л., ГИТТЛ, 1952. По поводу построения моделей распределения ресурсов см. также дополнительную литературу к главе VII.
ГЛАВА III ОДНОМЕРНЫЕ ПРОЦЕССЫ СГЛАЖИВАНИЯ И СОСТАВЛЕНИЯ РАСПИСАНИЙ 1. ВВЕДЕНИЕ В двух предыдущих главах мы показали, что семейство статических процессов распределения ресурсов можно рассмат- рассматривать как динамические процессы и потому к ним применим метод функциональных уравнений динамического программи- программирования. В настоящей главе, также основанной на этом под- подходе, мы хотим изучить некоторые процессы из области со- составления расписаний, которые естественным образом возни- возникают в динамической форме. Наряду с выработкой численного алгоритма согласно на- намеченному ранее плану в ряде случаев мы получим аналити- аналитическое описание оптимальной политики и аналитические пред- представления для функции дохода. Результаты такого рода ин- интересны не только вследствие их внутреннего изящества, но и потому, что точные решения для простых случаев могут быть использованы при приближенных решениях более слож- сложных задач. Аналогичную ситуацию можно наблюдать в теории дифференциальных уравнений. Здесь же мы имеем гораздо большую гибкость, так как приближения могут производиться как в пространстве функций, так и в пространстве политик. Важным моментом, который будет неоднократно подчер- подчеркиваться во всех последующих главах, является то, что метод функциональных уравнений может быть применен различными способами, как в комбинациях с классическими методами, так и в чистом виде — в зависимости от поставленной цели.
144 СГЛАЖИВАНИЕ И СОСТАВЛЕНИЕ РАСПИСАНИЙ [ГЛ. Ш Разница между тем, что мы называем явным аналитическим решением, и тем, что мы называем численным решением, есть разница скорее форм, нежели содержания. И то и другое представляет собой алгоритм получения некоторых чисел. Во многих случаях явное решение практически бесполезно для вычисленных целей. Простейшим примером такого яв- явления служит решение систем линейных уравнений, где ре- решению по правилу Крамера, требующему вычисления частных двух определителей, в случае систем большого порядка пред- предпочитают итеративный метод. Много аналогичных примеров можно найти в теории дифференциальных уравнений. 2. ПРОЦЕССЫ СГЛАЖИВАНИЯ Рассмотрим следующую ситуацию: мы хотим, чтобы неко- некоторая система работала в заданном режиме, причем известно, что затраты по эксплуатации системы зависят от отклонения ее от этого режима. Если мы попытаемся перевести систему в же- желаемое состояние, то мы затратим дополнительные средства, размер которых зависит от усилий, требуемых для этого пре- преобразования. Процесс, при котором целесообразно придерживаться не- некоторого среднего способа поведения, сочетая затраты раз- разных типов так, чтобы максимизировать полезность всей опе- операции, называется процессом сглаживания. Далее мы будем рассматривать примеры некоторых процессов этого типа из области экономики. Затем в главах VII и IX мы рассмотрим инженерные вопросы, аналогичные по математической поста- постановке. 3. ПРИМЕР ПРОЦЕССА СГЛАЖИВАНИЯ Начнем наше изложение с простого примера процесса сглаживания, часто встречающегося при анализе экономиче- экономических, промышленных и военных операций. На некоторую станцию обслуживания согласно графику (например, еже- ежедневно или еженедельно) поступают требования на опреде- определенные поставки или виды обслуживания. Если станция не может удовлетворить эти требования, то она терпит убыток. С другой стороны, в случае переукомплектования обслужи- обслуживающим персоналом или перегрузки складов она также тер-
4] МАТЕМАТИЧЕСКАЯ ПОСТАНОВКА ЗАДАЧИ 145 пит убыток другого рода. Если бы этим ограничивались условия работы станции, оптимальная политика управления была бы почти очевидной. Введем, однако, в рассмотрение затраты на изменение уровня запасов или обслуживания, что во многих ситуациях весьма естественно. Если теперь изве- известны размеры требований, сильно меняющиеся во времени, и заданы затраты на пополнение запасов и размеры убытков обоих видов, то задача определения способа регулирования уровня запасов, минимизирующего полные издержки всего процесса, становится уже нетривиальной. 4. МАТЕМАТИЧЕСКАЯ ПОСТАНОВКА ЗАДАЧИ Пусть /*!, п2, ..., гN — заданная последовательность спро- сов, где rk — спрос на k-ы шаге. Пусть также xk— производительность системы на /г-м шаге, k=\t 2, ..., N, C.1) где хо = с— фиксированный начальный уровень В настоящем примере предположим, что требуется выпол- выполнение неравенств xk^rk, k=\y 2, ..., N. C.2) Другими словами, мы настаиваем на том, чтобы спрос всегда удовлетворялся. Введем две функции убытков 9k (xk— rk)—убытки на &-м шаге, \ вызванные тем, что xk>rk\ I C 3) k — xk~i) — убытки на &-м шаге, | ' вызванные тем, что х^^гЬ x^v J Эта последняя функция, измеряет убытки, связанные с из- изменением уровня запасов или обслуживания. Суммарные издержки, связанные с выбором уровней хь хъ ..., xN, выражаются формулой С (хь X* ..., х^ = 2 [?k (*k — rk) + Ь (xk — **-i)l- C-4) k= 1 Наша цель — выбрать уровни xk, k—\, 2, ..., N, удовле- удовлетворяющие условиям xk^rk, так, чтобы минимизировать эту функцию.
146 СГЛАЖИВАНИЕ И СОСТАВЛЕНИЕ РАСПИСАНИЙ [ГЛ. III 5. ФУНКЦИОНАЛЬНЫЕ УРАВНЕНИЯ Для того, чтобы применить к этой задаче метод функцио- функциональных уравнений, рассмотрим для R=lt 2, ..., N класс задач, требующих минимизации функции JV Ся= И [?*(**-'*)+ы**-**-1I C-5) k=R в области xk^rk, k = R, R-\-\, ..., N, xR_х = с.л Определим семейство функций f(c) = min С„ R=\, 2, ..., N, C.6) {*k} где минимум берется по всей области изменения xk, опреде- определенной выше. Функция fN(c)= min \<f(xN-rN) + y(xN-c)] C.7) определяется несложно. Обычным приемом получаем следующее рекуррентное соотношение: fR{c)= min [9R(XR^rR)-\-^R(xR-c)^-fR+](xR)\ C.8) для R=\, 2, ..., N—1. Таким образом, мы имеем простой алгоритм для получения численного решения рассмотренной задачи оптимизации. 6. ОБСУЖДЕНИЕ Для различных классов функций {ср^ (х)}, { ф^ (х) } и ограничений того или иного типа оптимальные политики могут быть найдены в явном виде. Ссылки на ряд получен- полученных в этом направлении результатов читатель найдет в би- библиографии в конце этой главы. 7. ВЫЧИСЛИТЕЛЬНЫЕ АСПЕКТЫ Рассмотренный процесс, так же как и процесс загрузки судна (см. § 22 главы I), является одномерным процессом с целочисленными ограничениями. Более того, экстремумы
7] ВЫЧИСЛИТЕЛЬНЫЕ АСПЕКТЫ 147 здесь легко найти при помощи прямого сравнения, и при целочисленных точках решетки не требуется никакой интер- интерполяции. Область изменения величины с ограничивается авто- автоматически и известна заранее. В результате мы имеем короткую и прямую программу с фиксированной запятой, не вызывающую практически ника- никаких трудностей в отношении обьема памяти и затрат времени, 'фактически во всех примерах этого процесса, которые до сих пор ставились на машину, время вычисления определялось временем выдачи результатов на печать. В большинстве задач динамического программирования природа рассматриваемых величин такова, что аргумент функ- функции в правой части может принимать значения из широкой области. Например, в процессе загрузки судна (§ 22 главы I) количество единиц типа /V, которые следует погрузить на корабль вместимости w, может принимать любое значение между 0 и [w/wA]. Оставшаяся вместимость w — wNxN, таким образом, может принимать любые значения между 0 и w. В результате, прежде чем мы начнем вычисление fN{z), мы должны вычислить функцию fN_x (z) во всех целых точках z между 0 и w. Однако в рассматриваемом процессе мы можем заранее точно определить, какие значения функции fR+ x (xR) пона- понадобятся для определения fR(c). Принимая во внимание этот факт, мы экономим много машинного времени. Чтобы убедиться в этом, заметим, что значение xR ограни- ограничено снизу требованием rR и сверху величиной max/*^, так R как нет смысла выбирать xR большим, чем максимальное требование. Следовательно, функция fR, x (xR) должна быть определена для значений xR в промежутке rR^xR^maxrR. Отсюда получаем, что, когда fR+](c) вычисляется с по- помощью соотношения = min C.9)
148 СГЛАЖИВАНИЕ И СОСТАВЛЕНИЕ РАСПИСАНИЙ |>Л. III мы можем рассматривать только значения, удовлетворяющие условиям (а) гк C.10) (Ь) • -¦- 1 ' Хотя для того, чтобы понизить размерность задачи максими- максимизации, мы сводим ее к многошаговому процессу, но для умень- уменьшения вычислительных трудностей мы в то же время исполь- используем наши знания о будущих требованиях. 8. РЕЗУЛЬТАТЫ В процессе получения численных результатов мы исполь- использовали три различных критерия. В одном случае функция издержек вследствие перегрузки ?R(xR— rR) принималась равной xR—rR. Во втором случае мы полагали: для ДЛЯ XR~ В третьем случае предполагалось значительное увеличение убытков, когда перегрузка превосходит величину М: C.12) Затраты на увеличение производительности мы полагаем пропорциональными этому увеличению ~xR_v 0), C.13) а затраты на уменьшение производительности — равными 0. Во всех трех случаях затраты принимались не зависящими от номера шага.
:11] ЗАДАЧИ О БЛИЖАЙШЕМ СОСЕДЕ 149 Для каждого из трех возможных критериев мы рассмо- рассмотрели следующий график поступления требований, включаю- включающий 27 периодов: 18, 13, 9, 6, 3, 5, 8, 3, 1, 9, 18, 11, 4, 3, 2, 4, 5, 9, 12, 13, 12, 11, 13, 7, 1, 8, 14. C.14) Здесь а ==2 или 4 и Ж = 2 или 4 и исходный уровень равен 0. Следует заметить, что в большинстве случаев опти- оптимальная политика не единственна. Политика, показанная на графиках жирной линией, есть результат произвольного выбора на каждом шаге одного из двух минимизирующих значений. 9. БЛОК-СХЕМА (см. рис. 34) 10. НЕСКОЛЬКО ГРАФИЧЕСКИХ РЕЗУЛЬТАТОВ (рис. 35-45) 11. ЗАДАЧИ О БЛИЖАЙШЕМ СОСЕДЕ Рассмотрим набор точек pit лежащих на одной прямой и предположим, что только между соседними точками суще- существует некоторое взаимодействие. Пусть положение точки р{ Pl определяется координатой х{. Мы считаем, что совокупное взаимодействие между точками задается функцией g\ (*1 — *о) + & (Х'2 — *l) + • • • — ?N(XN ~XN- l)' (ЗЛ5) Если значения х0 и xN фиксированы, то состояние системы описывается числами х{, х%, ..., xN _ г Требуется найти такой набор этих величин, при котором функция C.15) минимальна. Численное решение задачи о нахождении хъ хь ..., xN_} легко получить с помощью изложенного выше метода. Задачи такого типа часто встречаются в статистической механике. В конце главы имеются ссылки на работы, в
150 СГЛАЖИВАНИЕ И СОСТАВЛЕНИЕ РАСПИСАНИЙ [гл. Щ вычисление max {rRj N большое число ~-j3 p дм числение <p (jrr/ -rn) +a тал (xn-c,0) + fn+f(Xn)i где Ъ+1 = О- /ранить в ос Нет \ с + / — Нет \ Да tfem IffJ -~ р„(О \Да \/7ерес/е/77 /п(с)-*Гп^ Vie чат & таблиц Рп и pi I Нет Нис. 34. Блик-схема решения.
ЗАДАЧИ О БЛИЖАЙШЕМ СОСЕДВ 151 15 % I О Ю 15 Пвриодш N 80 Рис. 35. График требований. 25 I I п I I L J I I L J 10 15 20 Периоды N Z5 Рис. 36. Оптимальная нагрузка согласно критерию I, а = 2, издержки =120.
152 СГЛАЖИВАНИЕ И СОСТАВЛЕНИЕ РАСПИСАНИЙ [ГЛ. [1 j .10 т S L-l I L-, О 5 10 15 20 25 Периоды А/ Рис. 37. Оптимальная нагрузка согласно критерию I, а = 4, издержки =120. ,1 I 15 Ч I Г1 I I -J I I I LJ LJ 10 15 Периоды 20 25 Рис. 38. Оптимальная нагрузка согласно критерию 2, а = 2, М = 2, издержки =80.
ЗАДАЧИ О БЛИЖАЙШЕМ СОСЕДЕ 153 I Я' I- ^ - 1 ' ! LJ Ln 1 Lj Г -1 ^Г ! LJ I Lj -Г О 5 10 15 20 Пер и odd/ N Рис. 39. Оптимальная нагрузка согласно критерию 2, в = 2, Л4 = 4, издержки =110. И 1 I П ' 1 lj ' i | LJ 10 15 20 25 Периоды N Рис. 40. Оптимальная нагр\зка согласно критерию 2, а = 4, Л4 = 2, издержки = 118.
154 СГЛАЖИВАНИЕ И СОСТАВЛЕНИЕ РАСПИСАНИЙ [ГЛ. II lJ 4J 10 15 20 Периоды N 25 Рис. 41. Оптимальная нагрузка согласно критерию 2, а = 4, Л1 = 4, издержки =154. О 10 15 20 Периоды N 25 Рис. 42. Оптимальная нагрузка согласно критерию 3, а = 2, М = 2, издержки =123,5.
It] ЗАДАЧИ О БЛИЖАЙШЕМ СОСЕДЕ 155 25 Рис. 43. Оптимальная нагрузка coi ласно критерию 3, а = 2, М = 4, издержки =121,5. I " V I i г- i i L J , I LJ 5 W 15 20 Периоды N 25 Рис. 44. Оптимальная нагрузка согласно критерию 3, я = 4, М = 2, издержки =228.
1-^6 СГЛАЖИВАНИЕ И СОСТАВЛЕНИЕ РАСПИСАНИЙ [ГЛ. Ill которых эта задача решается как классическими методами, так и методами динамического программирования. 10 15 Периоды 20 25 Рис. 45. Оптимальная нагр)зка согласно критерию 3, а = 4, М = 4, издержки = 216,5. 12. ЗАМЕНА ОБОРУДОВАНИЯ Одной из основных проблем индустрии является проблема замены старого парка машин новым, устаревших орудий — современными устройствами. Оборудование со временем изна- изнашивается как в буквальном смысле слова, так и «морально», т. е. устаревает по сравнению с более современным модер- модернизированным оборудованием, и наступает момент, когда большие затраты на новое оборудование, убытки вследствие остановки производства и расходы на создание новых кад- кадров — все это компенсируется увеличением производитель- производительности и уменьшением производственных затрат. Мы хотим определить оптимальную политику модерниза- модернизации и замены оборудования при различных предположениях огносшельно текущих издержек, производственных характе- характеристик и будущего развития техники. Так как решения должны приниматься почти ежегодно в зависимости от характерного для данного процесса периода времени, мы, очевидно, имеем многошаговый процесс решения.
14] ПОСТАНОВКА ЗАДАЧИ 157 Во всех исследованиях такого рода мы вынуждены делать предположения относительно будущего. Здесь мы рассмотрим только довольно простой случай, когда мы располагаем пред- предсказанием относительно будущего. Как дела!ь такие предска- предсказания и как следует их изменять на основании опыта — еще более сложные задачи (также относящиеся к динамическому программированию), которых мы в книге не будем касаться. 13. ФИЗИЧЕСКИЙ ПРОЦЕСС В целях упрощения рассуждений этого вводного параграфа предположим, что у нас имеется только одна машина, кото- которая приносит ежегодно некоторый доход, требует определен- определенного ухода и может быть в любой момент продана и заме- заменена новой машиной. Предположим, что доход, затраты на содержание, стоимость замены машины известным образом зависят от срока ее службы. При этих данных (рис. 46, 47, 48) мы хотим определить оптимальную политику замен в отношении этой машины. 14. ПОСТАНОВКА ЗАДАЧИ В ТЕРМИНАХ ДИНАМИЧЕСКОГО ПРОГРАММИРОВАНИЯ Предположим, что решения принимаются только в моменты времени ? = 0, 1, 2, ... и что в каждый такой момент мы должны решить, сохранить ли старую машину (это решение будем обозначать буквой К) или купить новую (это решение обозначим через Р). Пусть f(t) — суммарный доход при опти- оптимальной политике за весь рассматриваемый период от исполь- использования машины, имевшей к началу процесса возраст t. Для того чтобы суммарный доход оставался конечным, введем коэффициент скидки, т. е. предположим, что одна единица дохода на некотором шаге равносильна а единицам дохода следующего шага. Это — известный прием математической эко- экономики. Тогда, действуя обычным образом, мы получим функциональное уравнение -"@)-С^--а"]I C.16) Это — первый рассматриваемый нами бесконечный процесс и вместе с тем первый процессу в котором обозначению Л
158 СГЛАЖИВАНИЕ И СОСТАВЛЕНИЕ РАСПИСАНИЙ [ГЛ. III мы предпочли функциональное обозначение fit). Как читатель убедится сам, этим мы упрощаем наши последующие обозна- обозначения, в которых используются другие индексы. 15. АНАЛИТИЧЕСКОЕ РЕШЕНИЕ Ясно, что оптимальная политика состоит в следующем: держать машину, пока она не проработает Т лет, а затем заменить ее новой. Положив я @ = г @ -и @, C.17) мы придем к следующей системе уравнений: C.18) Решая эту систему относительно /A), получим Неизвестное значение Т выбирается так, чтобы максими- максимизировать это выражение для /A), так как, максимизируя /A), мы, очевидно, максимизируем и/@). Читатель сам может убедиться аналитически с помощью приведенных уравнений или непосредственно из рассмотрения самого процесса в том, что если мы имеем машину возраста, меньшего чем 1\ то оптимальная политика состоит в использовании машины, пока она не прослужит суммарно Т лет, и в последующей замене ее новой машиной. Что делать с машиной, если срок ее службы превосходит Т, не вполне ясно. 16. ТЕХНОЛОГИЧЕСКИЕ УСОВЕРШЕНСТВОВАНИЯ В § 13 мы предположили, что доход, затраты на содер- содержание и замену являются функциями только срока службы машины. Данные экспериментов показывают, что эту зависи- зависимость можно считать экспоненциальной (см. рис. 46, 47, 48), т. е. r(t)=Pe-st, u(t) = A+-B(l-e-wl), c(*) = C(l — ke~dt). C.20)
16] ТЕХНОЛОГИЧЕСКИЕ УСОВГ РШЕНСТВОПЛНИЯ 159 о 1 2 3 t Рис. 46. r(t) — годовой доход от ма- машины возраста t. А+В Здесь Р — доход от новой машины, А — затраш на содержание новой машины, А -\- В — предельные затраты на содержание машины по мере ее старе- _ ния, С—стоимость замены бесконечно устаревшей машины новой, k — доля С, остающаяся в качестве продажной цены машины сразу после покупки, и показатели s, w и d опре- определяют скорость стремле- стремления к пределу соответ- соответствующих величин. Предположим теперь, что производятся техно- технологические усовершен- усовершенствования. В результате машина, произведенная в течение каждого следую- следующего года Л/, будет да- давать начальный доход, превосходящий Р> и в далеком будущем у абсо- абсолютно новых машин на- начальный доход будет ра- равен P-j- Q- Предположим, что улучшение начальных характеристик носит так- же экспоненциальный ха- 0 12 t Рис. 47. u{t) — годовые расходы на со- содержание машины возраста t. С о 1 Z Рис. 48. C(t) — стоимость замены ма- машины возраста t. рактер уже как функция от времени изготовления машины, а не срока службы. Так как год производства опре- определяется значением Л/, то мы можем написать: rN(t)=\P+QV-*~ C.21) Если издержки производства стремятся к нулю по мере улуч- улучшения технологии и если увеличение затрат на содержание по мере старения машины уменьшается в и раз ежегодно, то можно записать: и тИ C.22)
160 СГЛЛЖИВЛНИЕ II СОСТАВЛЕНИЕ РАСПИСАНИЙ [ГЛ. III Стоимость этих новых улучшенных машин может со време- временем увеличиваться или уменьшаться; но, не ограничивая общности, можно также предполагать ее постоянной. Итак, мы определили семейство кривых. Для машин, про- произведенных в некоторый год, мы имеем кривую поведения в зависимости от возраста машин. На рис. 49 показано ти- типичнее семейство таких кривых, изображающих затраты на А+вк 1 Машина, произведенная в О-й год Машина, произведенная в 70-й год Машина, произведенная в 7ОО-й год Возраст лгашинь/ t Рис. 49. содержание машины. Хотя предположение об экспоненциаль- экспоненциальном характере технологических изменений облегчает ответы на некоторые вопросы и весьма реалистично, в следующем параграфе мы приведем численное решение, не зависящее от конкретного вида этой зависимости. На практике готовые таблицы различных затрат не менее удобны в употреблении, чем аналитические зависимости, и в то же время они больше соответствуют действительности. В большинстве данных ранее решений этой задачи экспоненциальные зависимости были введены для облегчения аналитического решения. 17. ФОРМУЛИРОВКА ЗАДАЧИ В ТЕРМИНАХ ДИНАМИЧЕСКОГО ПРОГРАММИРОВАНИЯ Введем следующие функции: f N(t)— величина суммарного дохода за год N от машины возраста t *) при оптимальной политике замены в оставшийся период**). C.23) *) И за период после года N. (Прим. ред.) **) Включая год N. (Прим. ред.)
18] ПРИМЕР 161 Будущие доходы, как и выше, учитываются со скидкой а. Однако мы также предполагаем, что процесс длится No ша- шагов и затем останавливается. Следовательно, Так как суммарный доход, связанный с приобретением новой машины в год Л/, равен ff(t) = rN @) - uN @) - cN (t) + afN+{ A), C.24) а доход при сохранении старой машины равен /# @ = гл- @ - Un @ + а/л' +10+1), C.25) то мы получаем уравнение /*(') = max [/#(<),/#>(*)] C.26) или ГЯ:^@)-^@)-^@ + ^+1AЛ • C.27) J Функция /дг(О полагается равной 0 для N^ No-}- \. Когда в уравнении C.27) N принимает значение jV0, мы получаем выражение для fjvo(f) через известные функции. Следовательно, можно найти /дг0 (t) для всех допустимых значений t. В зависимости от наших пока неопределенных решений на предшествующих шагах мы могли бы прийти к последнему шагу с чем угодно — от машины, купленной в предыдущий период и прослужившей один год, до очень старой машины, с которой начинался процесс. Построив функцию /лт0@» мы можем использовать уравнение C.27) для определения функции fNo_\(t). Продолжая эту проце- процедуру, получим функцию /, (t)f оптимальный доход процесса, начавшегося в 1-й год. Выписывая политику, использованную при максимизации C.27), мы получим политику замены, кото- которая обеспечивает максимальную прибыль. 18. ПРИМЕР Решим следующий простой пример. Рассмотрим процесс, длящийся 10 лет. Пусть затраты на замену машины, доход, затраты на содержание машин, произведенных в течение каж- каждого из этих 10 лет в зависимости от возраста машин, равны: 6 Р. Беллман, С. Дрейфус
162 СГЛАЖИВАНИЕ И СОСТАВЛЕНИЕ РАСПИСАНИЙ [гл. Ill Машина, произведенная в 1-й год Возраст машины 0123456789 Доход 90 85 80 75 70 70 70 60 60 60 Затраты на со- содержание ... 20 20 25 25 30 30 35 40 45 50 Затраты на за- замену 200 220 240 250 255 260 265 270 270 270 Машина, произведенная во 2-й год Возраст машины .. 0 1 2 345678 Доход 100 90 80 75 70 65 65 65 65 Затраты на содер- содержание 15 20 20 25 25 30 30 35 35 Затраты на замену 200 220 240 250 255 260 265 270 270 Машина, произведенная в 3-й год Возраст машины 0 1 2 3 4 5 6 7 Доход ПО 105 100 95 90 80 70 60 Затраты на содержание . 15 15 20 20 25 25 30 30 Затраты на замену .... 200 220 240 250 255 260 265 270 Машина, произведенная в 4-й год Возраст машины 0 1 2 3 Доход 115 ПО 100 90 Затраты на содержание 15 15 20 20 Затраты на замену 210 215 220 225 230 235 240 Машина, произведенная в 5-й год Возраст машины 0 1 2 3 4 5 Доход 120 115 115 ПО 105 100 Затраты на содержание . . 10 10 15 15 20 20 Затраты на замену 210 215 220 225 230 235 Машина, произведенная в 6-й год Возраст машины 0 1 2 3 4 Доход 125 120 ПО 105 110 Затраты на содержание . . 10 10 10 15 15 Затраты на замену 210 220 230 240 250 4 80 25 5 70 25 6 60 30
\$] ПРИМЕР 16? Машина, произведенная в 7-й год Возраст машины О 1 2 3 Доход 135 125 ПО 105 Затраты на содержание . . 10 10 10 10 Затраты на замену 210 220 230 240 Машина, произведенная в 8-й год Возраст машины 0 1 2 Доход 140 135 125 Затраты на содержание . . 5 10 10 Затраты на замену 220 230 240 Машина, произведенная в 9-й год Возраст машины 0 1 Доход ." 150 140 Затраты на содержание.... 5 10 Затраты на замену 220 225 Машина, произведенная в 10-й год Возраст машины 0 Доход 155 Затраты на содержание ... 5 Затраты на замену 220 Кроме того, мы начинаем процесс, имея машину, называе- называемую исходной машиной, прослужившую, скажем, уже три года, со следующими характеристиками: Возраст 3 4 5 6 7 8 9 10 11 12 Доход 60 60 50 50 50 40 40 40 30 30 Затраты на со- содержание ... 55" 55 55 60 60 60 60 65 ' 65 70 Затраты на за- замену 250 260 270 280 280 290 290 300 300 310 Построим таблицу для /ю@- Чтобы вычислить /юA), сравним разницу между доходом и затратами на содержание старой машины (машины, произведенной в 9-й год и про- прослужившей один год) с затратами на ее замену *). Получим: /10(l) = max *) Точнее, затратами на замену старой машины с учетом дохо- дохода и расхода на содержание новой машины. {Прим. ред.) 6»
164 СГЛАЖИВАНИЕ И СОСТАВЛЕНИЕ РАСПИСАНИЙ [ГЛ. HI и мы должны сохранить старую машину. Вряд ли можно ожидать, что оптимальной окажется политика, предписываю- предписывающая покупку новой машины на последнем шаге процесса. Аналогично Заполним теперь всю таблицу значений функции /10 (f) (см. таблицу 3.1). Таблица 3.1 t 1 2 3 4 5 /ю (О 130 115 95 85 80 Политика К к к к к t в 7 8 9 12 /ю С) 30 30 30 10 40 Политика К ¦ к к к к Вычислим первые два значения /9@ и составим полную таблицу, определяющую политику. Для удобства вычислений положим а=1, хотя в действительности а следует взять достаточно малым, чтобы отразить как неопределенность наших сведений относительно будущего, так и обесценивание доллара. р: 150 — 5 — 230+130] 15 J Р: 150 — 5 — 230+ 130] _ 95 /9B) — C.30) Таким же образом, используя уравнение C.27), имеем таблицу 3.2 доходов для нашей гипотетической машины. Проследим, как получается последнее число /1C) = 310, ибо оно и означает суммарный доход, которого можно добиться при оптимальной политике. Мы начинаем в первый год, имея исходную машину, которую можно заменить или сохранить. Если мы заменим исходную машину, затратив 250 долларов, то новая машина (произведенная в первый год) даст 70 дол- долларов чистого дохода за первый год службы "плюс*будущий доход D90 долларов), как машина, прослужившая один юд
18] ПРИМЕР 165 Таблица 3.2 / 1 2 3 4 5 6 7 8 И 240 195 175 165 75 70 60 25 25 Политика К к к к к к к к р t 1 2 3 4 5 6 7 10 310 275 260 145 125 ПО 105 75 Политика К к к р к р р р t 1 2 3 4 5 6 9 385 360 215 190 175 170 145 Пол шика К к к к р р р t 1 2 3 4 5 8 /е (О 465 295 265 245 240 210 Политика К к к р р р t 1 2 3 4 7 /s@ 390 345 325 320 295 Политика К к р р р t 1 2 3 6 /4@ 435 385 370 285 Политика к к к к t 1 2 5 /8@ 440 425 280 Политика К к к t 1 4 h @ 490 285 Политика К к t 3 /i(O 310 Пол шика Р и начинающая второй год работы. Поэтому чистый выигрыш равен 310 долларам. Если мы сохраним исходную машину, мы получим в этот год на 5 долларов больше и, получив за все будущие годы 285 долларов, будем иметь общий до- доход в 290 долларов. Так как 310^>290, мы решаем купить новую машину. Если мы выбрали такую политику, то, оче- очевидно, второй год мы начнем, имея машину, прослужившую один год, и, как видно из таблицы, ее надо сохранить.
166 СГЛАЖИВАНИЕ И СОСТАВЛЕНИЕ РАСПИСАНИЙ [гл. ш Третий год мы начнем, имея машину, проработавшую два года, и, следуя таблице, мы снова сохраняем ее. Возвращаясь теперь к исходному моменту, мы видим, что оптимальная поли- политика состоит в покупке новой машины в первый год, сохра- сохранении ее в течение пяти лет с последующей заменой ее на новую, которую следует сохранять уже до конца процесса. Для проверки наших выводов мы можем привести дохо- доходы от этой политики, сведенные в таблицу 3.3. Таблица 3.3 Год 1 2 3 4 5 Политика Р К к к р Доход — 180 65 55 50 — 145 Год 6 7 8 9 10 Политика К к к к к Доход 105 100 95 85 80 310 В качестве побочного результата нашего анализа мы по- получаем, что если бы нам пришлось сохранить исходную машину в течение первого года, например, из-за отсутствия достаточного капитала для замены, то оптимальная политика состояла бы в сохранении старой машины в течение пяти лет. Эта политика как раз и дает прибыль в 290 долларов. Так как чистый выигрыш от замены старой машины на новую составляет 20 долларов, владелец машины должен решать, будет ли экономически выгодным вкладывать 250 долларов ради выигрыша 20 долларов. Вычисления такого рода по сравнению всех вариантов и выбору наилучшего графика замены легко можно сделать вручную за час с небольшим. Вдобавок эти вычисления снабдят нас некоторой дополни- дополнительной ценной информацией. При машинном счете на один этап понадобится несколько секунд. 19. ДРУГИЕ ПОСТАНОВКИ ЗАДАЧИ Описанный здесь метод решения является достаточно об- общим и допускает большое разнообразие постановок задачи о замене оборудования. Для создания математической модели
19] ДРУГИЕ ПОСТАНОВКИ ЗАДАЧИ 167 нет надобности делать какие-нибудь нереальные предположе- предположения. Например, если желательно определить функцию gx(t, x), определяющую стоимость замены машины возраста t маши- машиной возраста х в N-U год, то в рассмотрение может быть включена третья возможность — покупка использованной машины. Рекуррентное соотношение в этом случае имеет вид Покупка новой машины rN @) — uN @) — cN (t) + afN+1 Покупка машины возраста х /n @ = max rN{x)—uN{x)—gN(t, x) -f afN+\(x -f 1) . C.31) X Сохранение старой машины Если мы допускаем для х значение 0 и cN(t)=gN(t, 0), то покупку новой машины можно считать частным случаем покупки машины возраста х. Мы можем включить в рас- рассмотрение также возможность капитального ремонта, если предположим, что машина возраста t, прошедшая капиталь- капитальный ремонт, имеет характеристики машины возраста t\ f <^t. Здесь t есть функция срока службы t, а также усилий, за- затрачиваемых на ремонт. Для того чтобы возможность ремонта включить в рас- рассмотрение самым общим образом, увеличим размерность задачи. Введем функцию j h> *г) — величина суммарного дохода на год TV от машины возраста tu прошедшей последний капиталь- капитальный ремонт после t* лет службы при оптимальной политике в оставшейся части процесса *). C.32) Теперь мы должны определить все наши издержки в зависимости как от возраста машины th так и времени *) Точнее, функция fN(tu t2) есть величина суммарного дохода за период, начинающийся с года TV, при наличии в начале этого года машины возраста tu прошедшей последний капитальный ре- ремонт после t2 лет службы, при оптимальной политике за весь ука- указанный период. (Прим. ред.)
168 СГЛАЖИВАНИЕ И СОСТАВЛЕНИЕ РАСПИСАНИЙ [гл. ш последнего капитального ремонта. Сделав это, мы сможем написать с помощью аналогичного метода рекуррентное соотношение : rN (О, 0) —uN @, 0)-cN (th t,) + /n (tl91^) = max C.33) где Otv(^i, ^2) — затраты на капитальный ремонт в год N машины возраста th прошедшей последний капитальный ремонт в возрасте t%. Метод численного решения этой задачи аналогичен методу, изложенному в § 17, за исключением того, что теперь мы вычисляем последовательность функций двух переменных. Такие вычисления для значений t{ и tb до- допустимых в данной задаче, легко проводятся на вычислитель- вычислительной машине вне какой бы то ни было зависимости от длины анализируемого процесса. Можно было бы сформулировать эту задачу в рамках стохастической модели, когда максимизируется ожидаемый доход. В такой модели следует ввести вероятность аварии как функцию возраста машины, характера ее использования и подобного рода других факторов. Задача состоит в оты- отыскании политики замены, максимизирующей некоторый крите- критерий предпочтения. Задачи такого типа являются частными случаями марков- марковских процессов решения, рассматриваемых в главе IX. Мы увидим, что если с помощью метода функциональных урав- уравнений установлено существование некоторых устойчивых или асимптотически устойчивых политик, то мы можем отка- отказаться от функциональных уравнений и использовать другие методы для получения приближенных решений. Таким спо- способом часто можно обойти обычные трудности, связанные с многомерностью. Ниже мы рассмотрим процесс управления запасами, кото- который является интересной комбинацией процессов сглаживания и замены оборудования.
21] МАТЕМАТИЧЕСКАЯ МОДЕЛЬ 169 20. ЗАДАЧА СКЛАДИРОВАНИЯ Продолжая рассмотрение одномерных процессов составле- составления расписаний, обратимся к следующей задаче. «Пусть имеется склад фиксированной вместимости с не- некоторым начальным запасом товара, стоимость которого под- подвержена известным сезонным изменениям. Какова оптималь- оптимальная политика покупки (или производства), хранения и про- продажи этого товара?» Метод динамического программирования дает возможность не только создания простого вычислительного алгоритма, но и нахождения точного аналитического решения задачи с по- помощью основных функциональных уравнений. 21. МАТЕМАТИЧЕСКАЯ МОДЕЛЬ Начнем с введения следующих величин: В — вместимость хранилищ склада, ( . v—величина наличного запаса на каждом шаге. ^ ' ' Рассмотрим сезонный товар, который мы должны заку- закупить (или произвести), а затем продать в течение N перио- периодов. Введем следующие обозначения (индекс / указывает, что до конца остается / периодов): ci—затраты на единицу товара (покупаемого или производимого), Pi—продажная цена единицы товара, ^.« xi — количество произведенного или купленного ^ * ' товара, yi—количество проданного товара. На всякую возможную политику мы должны наложить сле- следующие ограничения: (a) Ограничение на покупку. Запас в конце i-го пе- периода не может превышать вместимости склада. (b) Ограничение на продажу. Количество товара, проданного в /-й период, не может превышать ,~ одч количества товара, имеющегося на складе в конце ^ ' ' (i— 1)-го периода. (c) Неотрицательность. Объем товара, купленного или проданного в любой период, неотрицателен.
170 СГЛАЖИВАНИЕ И СОСТАВЛЕНИЕ РАСПИСАНИЙ [ГЛ. III Следствием этих ограничений являются неравенства *): Ограничения на покупку i ^ t = l, 2, ..., TV. \ C.37) 7=1 Ограничения на продажу Неотрицательность Придерживаясь этих ограничений, мы хотим максимизиро- максимизировать суммарную прибыль, полученную при ЛЛшаговом про- процессе, т. е. функцию N 7=1 22. РЕКУРРЕНТНЫЕ СООТНОШЕНИЯ Чтобы рассматривать эту задачу методами динамического программирования, введем последовательность функций {fN(v)}, определяемых соотношением fN (v) = max PN C.39) О', х) для значений v^O, 7V= 1, 2, ..., где xt и у% удовлетво- удовлетворяют соотношениям C.37). Для N= 1, очевидно, имеем: Л (v) = max (pxyx — с{х{), C.40) где максимум берется по области °<^i^^ JCi^O. C.41) Следовательно, fx(v) = pxv. C.42) *) В неравенствах C.37), и только в них, авторы используют отсчет времени в прямом направлении, и индекс / означает число прошедших периодов от начала. Далее и до конца в рассмотренной задаче применен обратный отсчет. (Прим. ред.).
24] - ПРЕДВАРИТЕЛЬНЫЕ ПРЕОБРАЗОВАНИЯ 171 Для N^2 обычным образом получаем рекуррентное соот- соотношение где максимум берется по области (a) 0^yN^v, | (b) xN^0, \ C.44) (c) v + *N—yN^B. J 23. ОБСУЖДЕНИЕ Это рекуррентное соотношение является весьма простым и объем вычислений, позволяющих найти максимальную при- прибыль и оптимальную политику, лишь несколько превышает возможности ручного счета. Оказывается, однако, что из ре- рекуррентных соотношений можно получить гораздо больше. Мы можем получить простое точное решение, которое тре- требует только ручного счета. 24. ПРЕДВАРИТЕЛЬНЫЕ ПРЕОБРАЗОВАНИЯ Далее оказывается удобным рассуждать в терминах уровня запасов, достигаемого к концу каждого периода. Введем ве- величину v + xN—yN = u. C.45) Теперь максимизацию по области C.44) можно записать в виде max [ max ]. C.46) Тогда соотношение C.43) будет выглядеть так: fN (у) = max | <?„ (и, v) +/д._, (и)}, C.47) О^я^ В где
172 СГЛАЖИВАНИЕ И СОСТАВЛЕНИЕ РАСПИСАНИЙ [ГЛ, III и xN, yN удовлетворяют неравенствам (a) v + xN — yN = u, (b) yN^v, (c) xN, yN^0. C.49) Для определения функции yN(u, и) мы должны максимизиро- максимизировать линейную функцию по точкам, лежащим на некоторой прямой; это означает, что мы должны исследовать только граничные точки. Случай 7: Случай 2: Рис. 50. Рис. 51. Когда 0 ^.u^.v, этими точками являются ^^ = 0, yN = v — и и xN = u, yN = v. В этой области ?лг("' v) = maxlPN(v — tt)> PNV — CNU\ C.50) Аналогично для v^u^B ?N ("> ^) = max [— cN (и — v), pNv — с „и]. C.51) При фиксированном v, O^v^B, в двух случаях, изобра- изображенных на рис. 50, 51, результат можно интерпретировать геометрически. Установив природу функций ср (и, v), попытаемся выяснить аналитическую структуру последовательности {fN(v)\.
26] Д0К\3\ГЕЛЬСТВ0 ТЕОРЕМЫ 173 25. АНАЛИТИЧЕСКАЯ СТРУКТУРА Структура функций fN (v), определяемых C.45), не совсем проста. Однако имеет место следующий неожиданный результат: Теорема. Функция fN (v) линейна по v, причем ее коэффициенты являются функциями piy ..., pN и сь ..., cN, именно fN(p) = KN{pb р* ..., pN\ сь с2, ..., cN)-\- + LQ>i> Рь ...» PN\ сь с* ..., cN)v. C.52) Кроме того, оптимальная политика и не зависит от на- начального уровня v, а зависит только от продажных и заку- закупочных цен. 26. ДОКАЗАТЕЛЬСТВО ТЕОРЕМЫ Проведем доказательство по индукции. Очевидно, что fl(v)=plv, так как доход на нулевом шаге /0(м) тождест- тождественно равен нулю. Допустим, что fN_](v) = KN_l-\- LN_{v, где коэффициенты KN_X и LN_X определяются N— 1 парой {Pi, ct\ продажных и закупочных цен, /==1, 2, ..., N—1. Покажем, что fN(v) имеет тот же вид, причем коэффици- коэффициенты KN и LN зависят уже от последовательности \рь с(}, i=\y 2, ..., N. Как и в случае 1, пусть cN^>PN- Согласно предположению о линейности fN_ x (и), максимум fN_} (и) дол- должен достигаться в одной из трех точек и = 0, u = v или и = В *). *) В силу C.50), C.51) ( pNv — и max (pN, cN)t 0 < и < v, N ' | — cNu + v max (pN, cN)9 и является кусочно-линейной по и при сдг>Рдг- Максимум суммы <Рдг(м, v)JrfN_l(u) поэтому может достигаться в одной из трех точек: и = 0, u = v, u = B. При pN>cN и сумма <р^(и, *>)+//v-i(M) является линейной функцией а. (Прим. ред.)
174 СГЛАЖИВАНИЕ И СОСТАВЛЕНИЕ РАСПИСАНИЙ [ГЛ. III Таким образом, <fN(B, г,)+/„_,(?)] C.53) или fN (р) = max [pNv + /^jv_ ,, А'ЛГ_, -f i;v_ ,г>, -cN(B-v) + KN_l + LN_lB]. C.54) Так как в C.54) — третья величина больше первых двух тогда и только тогда, когда с N<^LN_V значение и = В выбирается только в этом случае. Когда PN<C^N-\<^cNy максимальна вторая величина, а когда LN_x<^pN, наибольшей является первая величина. Следует заметить, что во всех случаях максимизирующее значение не зависит от v. Если и = В, то fN (v) = {KN_ x + LN_ XB - cNB) + cNv. C.55) Следовательно, KN = KN_lJr LN_]B —cNB и LN = cN. Если u = v, то ^(^ = ^-1 + ^-1^ C-56) откуда KN — KN__X и LN=LN__y Наконец, при и = 0 полу- получаем: fN(v) = KN_t+pNv C.57) и KN = KN_V LN = pN. В любом случае fN(v) есть линей- линейная функция v, и новые коэффициенты зависят только от Pi ft и cu ..., с^ Остается рассмотреть второй случай, когда PN^>cN- Так как функции <Pjy(H, i') и fN_{(v) линейны, мы должны ис- исследовать только точки и = 0 и ц = В. Здесь ^ (v) = max [?JV @, х;) +/„_ t @), ср^ (Д v) +fN_, (В)], C.58) /„ (v) = max [^u + KN_V pNv-cNB+KN_X+LN_, В]. C.59) Мы имеем максимум при н = 0, если LN_x<^cN, и при и = В, если LN_x^zcN. В обоих случаях >. C.60)
28] численный пример 175 если м = 0. Здесь KN = KN_V LN = pN> С другой стороны, i C.61) если м = В. Здесь KN = KN_{-f- LN_lB — cNB, LN=pN. Теорема 1 доказана. 27. ОБСУЖДЕНИЕ Рассмотрим экономическую интерпретацию этой задачи и исследуем наши аналитические результаты. Очевидно, если CN^>PN> мы имеем три альтернативы, за- зависящие от других параметров. Уравнения C.55)—C.57) можно истолковать следующим образом: C.55) определяет закупку товара в количестве, достаточном для заполнения склада, и издержки при этом решении yN(B, v) равны сА (В — v). С другой стороны, уравнение C.56) означает от- отсутствие каких-либо действий, издержки при таком решении, очевидно, равны 0. Наконец, уравнение C.57) выражает про- продажу всех v единиц товара, которые были на складе к на- началу периода, что дает непосредственный доход pNv. Обращаясь к уравнению C.60), где PN^>cN, мы полу- получаем несколько отличную интерпретацию. Здесь назначение политикой конечного уровня В означает продажу v единиц и покупку В единиц товара, что потребует затрат, равных pAv — cNB. Выбор, как и раньше, величины и = 0 означает продажу всех v единиц, что приносит доход pNv. Всего мы имеем четыре различные политики: продавать, покупать, про- продавать и покупать, ничего не предпринимать. Все действия предпринимаются с учетом ограничений на емкость склада или уровень запасов. 28. ЧИСЛЕННЫЙ ПРИМЕР Напомним, что р{ и сг — стоимостные показатели в мо- момент, когда остается i периодов до конца. Проиллюстрируем полученное решение на примере следующего процесса, имею* щего 10 периодов (см. таблицу 3.4).
176 СГЛАЖИВАНИЕ И СОСТАВЛЕНИЕ РАСПИСАНИЙ [ГЛ. III Таблица 3.4 1 ч Pi 1 3 2 2 5 3 3 2 1 4 3 5 5 3 5 6 4 4 7 3 1 8 2 7 9 8 6 10 8 3 Мы хотим вычислить Киь ?ю и мю> коэффициенты функции дохода и политику, когда остается еще 10 периодов, т. е. ре- решение, которое следует принять в начале процесса. Так как fx(v)=p{v, мы заключаем, что К\ = 0, Ll=pl и //1 = 0. Отсюда #1 = 0, 11 = 2, н1 = 0. C.62) Заметим, что c2^>/V, эт0 значит, что мы должны обратиться к уравнениям C.55)—C.57). Так как Lx<^p^ применимо уравнение C.57), которое даег значения /^ = 0, L2 = 3, щ = 0. C.63) Для третьего от конца периода вследствие C.63) и соотно- соотношений сг^>рд и L2^>cA можем использовать уравнение C.55). Следовательно, Къ = В, Ц = 2, и3=13. C.64) Продолжая этот процесс, получаем: C.65) Для этого конкретного примера можем сделать следую- следующие выводы. При оптимальной политике прибыль составляет 6Я -j- 7v, где v — запас в начале процесса и В — вместимость
30] ЗЛДЛЧА О ПОСТАВЩИКЕ 177 склада. Оптимальная политика требует, чтобы в течение пер- первых двух периодов не предпринималось никаких действий, в третьем периоде было продано v и куплено В единиц, в течение четвертого и пятого периодов склад оставался за- заполненным, в течение шестого периода было продано В и куплено В единиц, в седьмом периоде продано Дав вось- восьмом куплено В единиц, которые следует продать в девятом периоде. 29. ВЫВОДЫ • Мы установили следующие результаты: 1. Оптимальный доход за N шагов является линейной функцией начального уровня, коэффициенты которой зависят от продажных и закупочных цен. 2. Оптимальная политика на любом шаге не зависит от уровня запасов в начале любого шага. 3. Оптимальная политика всегда имеет следующую про- простую структуру: не покупать и не продавать в течение k первых периодов (k может равняться нулю) и затем в те- течение оставшихся периодов держать склад либо пустым, либо заполненным. 30. ЗАДАЧА О ПОСТАВЩИКЕ Эта задача сильно отличается от только что рассмотрен- рассмотренной по формулировке, но имеет аналогичную аналитическую структуру. Она формулируется следующим образом. «Поставщик знает, что в связи с обедами, которые он обязался обслуживать в течение следующих п дней, ему по- требуекя в у'-й день гу- чистых салфеток, у=1, 2, ..., п. Можно пользоваться двумя видами стирки: один требует р — 1 дней и стоит Ь центов за салфетку, срочная стирка требует q—1 дней, q<^p, и стоит с центов за салфетку, с^>Ь. Перед началом процесса поставщик не имеет салфе- салфеток и покупает их по цене а центов за штуку. Как следует поставщику закупать и стирать салфетки, чтобы минимизиро- минимизировать суммарные затраты за п дней?» Можно указать несколько различных подходов к этой задаче. Мы укажем три способа: один приводит к функциям большего числа переменных, второй — к весьма простому
178 СГЛАЖИВАНИЕ И СОСТАВЛЕНИЕ РАСПИСАНИЙ [ГЛ. III аналитическому решению и, таким образом, к очень простому численному решению, третий дает простое непосредственное решение. В основе второго подхода лежит важная идея, с помощью которой упрощаются многие задачи вариационного исчисле- исчисления. Несмотря на существование тривиального решения, ниже мы обсудим эту идею, так как мы будем обращаться к ней в связи с процессами с «узкими местами» и при рассмотре- рассмотрении последовательных приближений. 31. ПОДХОД С ТОЧКИ ЗРЕНИЯ ДИНАМИЧЕСКОГО ПРОГРАММИРОВАНИЯ - I Первый подход к задаче с помощью методов динамиче- динамического программирования состоит в следующем. Состояние процесса в любой момент может быть определено номером шага, т. е. днем, и числом салфеток, которые следует полу- получить из стирки через 1, 2, ..., р—1 дней. На какой ин- информации мы должны базировать наше решение о покупке некоторого числа салфеток и как организовать стирку ис- использованных салфеток? Нетрудно сформулировать задачу на этом пути, исполь- используя метод функциональных уравнений. К сожалению, если р велико, нас погубит размерность. Как мы увидим, действительная размерность этой задачи в измененной формулировке равна р — q. На примере этой задачи мы очень хорошо проследим, как различные методы могут быть применены к одному и тому же процессу. 32. ПОДХОД С ТОЧКИ ЗРЕНИЯ ДИНАМИЧЕСКОГО ПРОГРАММИРОВАНИЯ - II Вместо упомянутого выше подхода будем действовать обычным образом с помощью уравнений, описывающих процесс, и на некоторой стадии решения привлечем метод динами- динамического программирования. Прежде всего из приведенной формулировки задачи ясно, что мы можем закупить все салфетки одновременно перед началом процесса. В таком случае начинаем с решения более простой задачи определения процесса стирки, если начальное количество салфеток равно 5.
32] ДИНАМИЧЕСКОЕ ПРОГРАММИРОВАН»! ~ II 179 Очевидно, SS*maxrA. C.66) k Сделаем теперь упрощающее предположение, что все использованные к концу дня салфетки немедленно отправ- отправляются в стирку, в срочную или обычную. Тогда процесс продолжается следующим образом. В конце k-vo дня поставщик делит rk, количество имеющихся грязных салфеток, на две части: rk = uk -f- vk, uk салфеток посылаются в (р—1)-дневную стирку и vk — в (д—1)-дневную. Продолжая таким образом, мы видим, что количество xk чистых салфеток в начале ?-го дня определяется следующим рекуррентным соотношением: "k-g C.67) где uk = vk = 0 для k^O. Издержки ^-го дня равны bvk + cuk, A=l, 2, ..., N—\. C.68) Следовательно, суммарные расходы составляют: TV- 1 /V- 1 CN = b 2 vk+c 2 «*• C.69) k = 1 k = 1 Задача состоит в минимизации величины CN при следующих ограничениях на uk\ (а) (Ь) xk^rk, k=\, 2, ..., N. j Чтобы проиллюстрировать этот метод, рассмотрим сначала два частных случая: (a) q=\, p=2, (b) ?=1, р = 3, а затем и общий случай.
180 СГЛАЖИВАНИЕ И СОСТХВЛЕНИЕ РХСПИСАНИЙ [гл. in 33. АНАЛИТИЧЕСКОЕ РЕШЕНИЕ ДЛЯ ?==1, р = \ Здесь уравнения C.67) принимают вид — гх) + щ, C.72) Теперь выразим х,г через uk и vk. Это — важный прием, с помощью которого мы существенно понижаем размерность процесса. С ним мы еще встретимся ниже. Мы имеем: + щ) + ^i, лг4 = E — Г! — г2 — г3) + («1 + "а + Из) + -1 = E — Г, — Г2 — . . . — «2 = E — Г! — г9 —... — гп_х) C.73) Так как rk = uk-\-vki то можно записать*): хл = 5 — xvi (^o = O), A=l, 2, ..., п. C.74) *) Результат можно получить проще. Так как при # = 1, /? = 2 C2.2) имеет вид xk — xk_t = - r^ + мА_1 + ^fe_2 == - (vk_x — vk_2)t то A"fc = —t//f _j -f- c} где константа с определяется начальным усло- условием хх = 5, vo = D. (Прим. ред.)
Лб] АНАЛИТИЧЕСКОЕ РЕШЕНИЕ ДЛЯ q=\, /? = 3 (i) 181 Обращаясь к C.69), мы хотим минимизировать N-1 N-1 CN=C ? по всем г>А при ограничениях (a) 0<t»*<rft, (b) 61 — t>ft_,^rfe или vS1 — 2 "* C-75) Л=1 C.76) Так как (с — ?)^>0, мы хотим выбрать vk как можно большими. Следовательно, vk = min(rk9 S—rk+y), k=\,%...,N—\. C.77) Это равенство определяет структуру оптимальной поли- политики. Используя явный вид решения C.77), нетрудно опреде- определить минимизирующее значение 5. 34. АНАЛИТИЧЕСКОЕ РЕШЕНИЕ ДЛЯ q = k, p = Выписав соответствующие уравнения, нетрудно видеть, что случай q = k, p = k-\-\ приводит к системе уравнений того же типа, что и выше. Это показывает, что уровень трудности задачи определяется разностью р — д. 35. АНАЛИТИЧЕСКОЕ РЕШЕНИЕ ДЛЯ ? = 1,р = 3 (I) Чтобы проиллюстрировать метод, применимый к общему случаю, рассмотрим случай, когда q=\y р — 3. Уравнения C.67) принимают вид Х\ = о, C.78) = -*«_! J
182 СГЛЛЖЙЙМП #Ч!6№ОТЛЕНИБ ТАСПИСЛНИЙ [ГЛ. Ill Таким образом, r2) -f щ + щ, ri — r8) + щ -f C.79) Следовательно, C.80) xn = S — vn_b — vn_{ N- 1 Мы хотим максимизировать х:умму ^ vk при ограничениях или 5 —П^^, C.81) C.82)
36] АНАЛИТИЧЕСКОЕ РЕШЕНИЕ ДЛЯ q = 1, /7 = 3 (il) 183 36. АНАЛИТИЧЕСКОЕ РЕШЕНИЕ ДЛЯ ? = 1, р = 3 (II) Наша задача сводится к максимизации линейной формы N LN= 2 *k C.83) при ограничениях вида (a) h C.84) (b) rk^vk^O. Выбрав vb мы имеем задачу того же типа для остальных переменных т>2, и3, ..., v^ Определим последовательность функций {fk(x)}> k=\} 2, ..., N—l, следующим образом: /*(*) = max y\vl9 C.85) где Rk — область» определяемая условиями (a) x^vk^Ot (b) 0, C.86) Имеем: C.87)
184 СГЛАЖИВАНИЕ И СОСТАВЛЕНИЕ РАСПИСАНИЙ [гл. III где x^Vv .350, ] N~ [ C.88) Следовательно, /дг _, (*) = min [V * + гл.]. C.89) Опираясь на принцип оптимальности, мы видим, что Л (х) = max К -f Л+1 (min (гЛ+1> *Л+! — vk))]> C.90) где у% = т\х\[х, bk+l] для k=\, 2, ..., TV—1. 37. АНАЛИТИЧЕСКОЕ РЕШЕНИЕ С помощью элементарных выкладок теперь можно показать, что fk(x) = min[Pk) x+Qk], C.91) где ° ]D ""A"^^|]+**+ll> P^-1 = ^' J C.92) и k=l, 2, ... , TV— 1. Более того, аналогичный результат имеет место в общем случае, при любом целом значении р — q. Мы провели этот анализ, чтобы показать, что метод функ- функциональных уравнений можно использовать для получения явных аналитических решений в ряде задач составления рас- расписаний, аналогичных поставленной в задаче § 36. 38. РЕШЕНИЕ, ОСНОВАННОЕ НА ЗДРАВОМ СМЫСЛЕ Покажем теперь, что начальную задачу, сформулирован- сформулированную в § 30, можно решить с помощью очень простых рас- рассуждений. Рассмотрим сначала случай, когда q = % p = \. Сохраняя прежние обозначения для величин uki vk и xk, получаем следующие два условия на vk в виде неравенств, которым должны удовлетворять требования в те будущие периоды, на которые влияет решение, принятое в момент k\ Xk — Ги — rk+i + vk-4 ¦и*+ [ C.93)
38] РЕШЕНИЕ, ОСНОВАННОЕ НА ЗДРАВОМ СМЫСЛЕ 185 Группируя члены и перенося некоторые из них в правую часть (учитывая, что Uk-\-vk — rk)> имеем: C.94) Если предположить, что затраты пропорциональны числу салфеток и не зависят, как и раньше, от времени, то uk+l можно положить равным гл+1. Это имеет место в силу того, что при исследовании вопроса об отправке возможно большего числа салфеток в обычную стирку можно предположить, что в дальнейшем все салфетки будут посылаться в срочную стирку. Выберем теперь ), rk\ C.95) что решает задачу. Численный пример для 6*= 20, <; к следующим результатам: k 12 3 4 5 6 rk 3 5 6 4 9 2 vk 3 5 2 4 9 0 uk 0 0 4 0 0 2 17 12 6 9 5 5 = 2, p = 4 приводит 7 8 9 1 10 1 10 1 1 0 10 О О 9 8 Перейдем к рассмотрению общего случая. Неравенствами, которым мы должны удовлетворить, будут *): ^ Vk-p+q+l Vk-p+q+2 • • • Vk rk+\ • • ~ rk+q-i '¦¦ r k+q> ... Vk+l rk+2 rk+p-q C.96) Здесь р — q соотношений и vk ^ rk. *) Решение, принятое в момент kt оказывает влияние в момент не ранее окончания срочной ((q — 1)-дневной) стирки и не позже, чем будут выстираны все салфетки (в оригинале индексы q и р перепутаны). (Прим. ред.)
186 СГЛАЖИВАНИЕ И СОСТАВЛЕНИЕ РАСПИСАНИЙ [гл. ш Используем эти неравенства для определения границ vk. Чтобы сделать значение vk как можно ббльшим, положим в неравенствах C.96) vk+i равными 0, /^1. Это, как и раньше, допустимо, так как увеличение vk на единицу и N уменьшение vk+l на единицу не влияет на величину ^ Vj. Положив в неравенствах т>л+1- = 0для всех iz^l и перенеся члены в разные части неравенств, получаем следующие ограничения: k-\ k+q 2 i=k-p-\-q+\ k- 1 ¦ 2 i i=k-p+q+2 k+p- 1 \rb. C.97) В качестве примера рассмотрим случай, когда 5=20, р = 5, q = 2 (см. таблицу 3.5). Отмеченное звездочкой число 4 полу- получено следующим образом: 4 = minB0—8—0—3—2, 20—0—2—14, 20—14—1,8). (Э.98) Таблица 3.5 Vk 1 1 0 19 10 8 2 9 2 0 2 9 8 4* 4 3 3 0 3 5 2 1 1 14 14 14 0 1 1 1 0 4 39. ЗАДАЧА УПРАВЛЕНИЯ ЗАПАСАМИ Существует большое число процессов, заключающихся в образовании запасов с целью обеспечения неизвестного спроса в будущем. Здесь мы рассмотрим только простой случай, когда известно распределение величины будущего спроса.
39] ЗАДАЧА УПРАВЛЕНИЯ ЗАПАСАМИ 187 Рассмотрим процесс образования запасов товара одного наименования. Предположим, что в каждый из конечного числа промежутков времени производятся заказы на дальней- дальнейшие поставки этого товара на склад и эти заказы немедленно выполняются. После того как заказ на товар сделан и удо- удовлетворен, на него возникает спрос. Этот спрос удовлетво- удовлетворяется по мере возможностей, причем каждое превышение спроса над уровнем запасов ведет к убыткам. Допустим, что известны следующие функции: (а) у (s) ds — вероятность того, что величина спроса нахо- находится между s и s-{-ds; (b) k(z)~ стоимость заказа партии размером г единиц . /о qq\ для пополнения уровня запасов; « v • / (с) р (z) — стоимость заказа партии размером z единиц для покрытия неудовлетворенного спроса, или размер штрафа. Для простоты предположим, что эти функции не зависят от времени. Наша цель — определить политику заказов, которая минимизировала бы ожидаемые расходы за весь /V-шаговый процесс. Введем теперь следующую функцию: fN(x) — математическое ожидание издержек для //-шаго- //-шагового процесса при начальном запасе х и оптимальной C.100) политике заказов. Предположим, что на первом шаге мы заказали у— х единиц, так что уровень запасов поднимается до у. Тогда ожидаемые издержки задаются функцией 00 k (у — х) = \ р (s —у) <р E) ds. (Э.101) У Следовательно, со ft (х) = min \k (у — х) -f \ p (s —у) <р (s) ds]. C.102) У^х у J Обычные рассуждения, основанные на перечислении всех воз- возможностей, соответствующих различным случаям лревышения
188 СГЛАЖИВАНИЕ И СОСТАВЛЕНИЕ РАСПИСАНИЙ [ГЛ. Ill спроса над уровнем запасов и уровня запасов над спросом, приводят к рекуррентному соотношению fn(x)= min \k(y — 1 C.103) Мы рекомендуем читателю сравнить эту задачу с задачей § 10 главы II. Там мы имели дело с ожидаемыми текущими издержками, связанными с принятием определенного решения; здесь же мы имеем случайные текущие издержки, связанные с решением, и новое состояние, которое также случайно. В обоих случаях мы встречаемся с одной и той же форма- формализацией. 40. ОБСУЖДЕНИЕ С вычислительной стороны мы имеем осуществимый алго- алгоритм вычисления последовательности {fN(x)} и оптимальной политики заказов {yN(x)}. Однако при различных предполо- предположениях относительно функций k (z), p(z) и ср (s) мы можем продолжить исследование и получить простую характеристику оптимальной политики. Особенно интересен случай, когда k(z) и p(z) — линей- линейные функции вида ,«-« ---! (зл04) Здесь мы можем показать, что оптимальная политика имеет очень простую и понятную структуру, именно: для каждого А/ существует такой уровень запасов SN, что если x^>SN, мы ничего не заказываем, если же x<C^SN, мы заказываем SN — х, поднимая уровень запасов до SN. На первый взгляд приведенные выше функциональные уравнения не похожи на соотношения, полученные в задаче о замене оборудования и ее обобщениях. Если, однако, мы
41] ДАЛЬНЕЙШИЕ УПРОЩЕНИЯ 189 рассмотрим только дискретные значения уровня запасов и дискретные значения величины спроса, мы получим уравнения следующего вида: 2 P(r~ ? = ;+1 r=j для i=0, 1, 2, ..., M, /1=1, 2, ... Мы увидим далее, что уравнение оптимального управления запасами можно рассматривать как частный случай общего уравнения для марковских процессов решения, рассмотрен- рассмотренных в главе XI. 41. ДАЛЬНЕЙШИЕ УПРОЩЕНИЯ В некоторых случаях детерминированная задача управления запасами, которая представляет собой одномерную задачу, требующую вычисления последовательности функций одной переменной (это достаточно простая задача для вычислитель- вычислительной машины), может быть сведена к еще более простой за- задаче, для решения которой достаточно ручного счета *). Для i-ro периода, i=l, 2, ..., N, определим следующие величины: di—величина спроса, /;—расходы на хранение единицы товара в течение следующего периода, Si—организационные издержки (затраты C.106) на совершение сделки), Х{ — величина заказа. Мы требуем, чтобы весь спрос удовлетворялся, и хотим минимизировать суммарные издержки. Считается, что заказ требует только организационных затрат: фактические расходы *) Описанная ниже задача, по существу, отличается от пред- предшествующей. Учитываются единовременные затраты, связанные с самим актом заказа, и затраты на хранение. Решается задача о компромиссном выборе между политиками регулярных много- многочисленных закупок и малого времени хранения и политиками ред- редких закупок и длительного хранения. {Прим, ред.)
190 СГЛАЖИВАНИЕ И СОСТАВЛЕНИЕ РАСПИСАНИЙ [ГЛ. III на закупку товаров мы не включаем, так как предполагается, что стоимость заказа линейно зависит от его объема, причем стоимость единицы товара постоянна. Отсюда следует, что, за исключением организационных расходов, суммарная сто- стоимость заготовки одинакова для любой программы удовлетво- удовлетворения спроса. Пусть / обозначает запас товаров в начале периода. Легко доказать следующие утверждения. 1. Существует оптимальная программа, для которой /jci- = O для всех и Иначе говоря, если в начале периода имеется излишек товара, то мы не производим никаких заказов. 2. Существует такая оптимальная программа, что для всех i или Xi — О, или для некоторого k, i^k^N, xt = k = ^ dj. Иначе говоря, заказываем как раз столько товара, сколько нужно для удовлетворения будущего спроса в тече- течение некоторого будущего периода k. 3. Существует такая оптимальная программа, что если спрос dp удовлетворяется некоторым заказом xt**y i**<^i*, то d{, i = i**-|-1,..., i*—1, также удовлетворяется этим заказом. 4. Если для периода i мы имеем /=0, то в оптималь- оптимальной политике периоды 1, 2, ..., I—1 можно рассматривать независимо от оставшейся части процесса. Обозначив через F(i) минимальные издержки за периоды 1, 2, ..., i, мы получаем: F (i) = min min [Sy+S 2 , C,107) где /7A) = 51 и F@) = 0. Следовательно, мы вычисляем одну функцию одной пере- переменной вместо последовательности функций одной переменной. 42.ПЛАНИРОВАНИЕ ПРОИЗВОДСТВЕННОЙ ЛИНИИ Последняя задача, которую мы хотим рассмотреть, пред- представляет собой простой пример из важного класса задач, связанных с организацией, производства. К очень немногим задачам этого класса найдены подходы, а так как решение,
43] МАТЕМАТИЧЕСКАЯ ПОСТАНОВКА ЗАДАЧИ 191 которым мы располагаем, весьма изящно, по-видимому, целесообразно его здесь привести. Его можно использовать, чтобы получить приближенные решения более сложных ва- вариантов. Рассмотрим N различных деталей, которые должны пройти последовательную обработку на двух машинах. На каждой стадии процесса каждая машина может обрабатывать лишь одну деталь. Допустим, что порядок прохождения деталями обра- обработки не может быть изменен после начала процесса. Для каждой детали задано время обработки на каждой машине. В каком порядке следует подавать детали на первую машину, чтобы минимизировать суммарное время, необходимое для обработки всех деталей? 43. МАТЕМАТИЧЕСКАЯ ПОСТАНОВКА ЗАДАЧИ Пусть ai — время обработки 1-й детали на первой машине, bt — время обработки /-й детали на второй машине. Процесс протекает следующим образом. Детали располагаются в некотором порядке, например 1, 2, ..., А/, что схемати- схематически изображено на рис. 52. После того как первая деталь Машина 7 Машина 2 Рис. 52, прошла через машину /, она подается на машину 2. Как только машина 1 кончает обработку первой детали, машина 2 начинает ее обработку. Машина 2 не может приступить к обработке второй детали, пока она полностью не закончит обработку первой. Задача состоит в том, чтобы установить порядок запуска деталей в обработку, минимизирующий суммарное время про- простоя второй машины в ожидании деталей от первой машины. Сложность этой задачи является следствием того факта, что различные детали требуют разного времени обработки на машинах.
СГЛАЖИВАНИЕ И СОСТАВЛЕНИЕ РАСПИСАНИЙ [ГЛ. Ill Пусть xi — период простоя второй машины перед тем, как на нее поступает /-я деталь. C.108) Имеют место следующие рекуррентные соотношения: Х\ === CL\y х% = max (п\ -j- а2 — Ь\ — Ху, 0), «, - j>, - j>,, О), * = 1 i=l 3 3 2 и по индукции где N y,xi= max Km C.110) Мы хотим найти перестановку деталей, которая миними- минимизировала бы выражение C.110). Хотя этого можно достичь и прямыми методами с помощью приведенных выше рассуждений, будет поучительно исполь- использовать метод функциональных уравнений, что мы и сделаем. 44. ПОДХОД С ТОЧКИ ЗРЕНИЯ ДИНАМИЧЕСКОГО ПРОГРАММИРОВАНИЯ Введем следующую функцию: f(av bv a2, b2, ..., aN, bN, t) — время, необходимое для обработки N деталей при условии, что вторая машина начинает работать на t единиц времени позже первой, aiy b[ — время, необходимое для обработки /-й детали соответственно на первой и второй машинах, и при этом используется оптимальная перестановка деталей.
45] ОПРЕДЕЛЕНИЕ ОПТИМЧЛЬНОЙ ПЕРЕСТАНОВКИ 193 Если машины начинают обработку с i-й детали, то мы получаем функциональное уравнение f(<*i> bi9 ai9 Ьь ..., aN, bN, t) = = mm\ax-\-f{ab bh аь Ьь ..., О, 0, ..., aN, bN\ 6,-+ max (* — a/f 0))], C.113) где на месте пары (ai} bf) стоит пара @, 0). Чтобы из этого соотношения получить оптимальную пере- перестановку, поменяем местами две детали. Тогда, обрабатывая сначала 1-юу а затем у-ю деталь, получим: /(<*!, Ьь аь Ьь ..., ах, bN\ t) = = at+ aj-\-f(ab bi9 ..., 0, 0, ..., a^ bN; tu\ C.114) где tij = bJ-]~max[bi-Jrmax(t — ait 0) — ay-, 0] = = bj -]- bt — aj -'- max [max (t — av 0), aj — bt] = = bj + bi — aJ + max[t — ai, aj — bi9 0] = = bj-\-bi — ai — ai + m*\[t9 a^aj — b^ at] = = bj -|- bt — aj — at-\- max [t, max [at ~\- a;- — bi9 а(]\. C.115) Теперь мы видим, что если max [ui + uj — bi9 at] <^ max [at -f- aj — bjy aj\9 C.116) то /-Ю и у-ю деталь имеет смысл поменять местами. Этот критерий может быть переписан в виде ai + aj + max f — bv ~ <*j] < <*> + <*j + + max[—fty> —a{\. C.117) Таким образом, мы сравниваем *) max[—bh —aj] и max[—bj, —af]. C.118) 45. ОПРЕДЕЛЕНИЕ ОПТИМАЛЬНОЙ ПЕРЕСТАНОВКИ Чтобы в соответствии с предыдущим результатом опре- определить оптимальную перестановку, нужно действовать сле- следующим образом. *) Перестановка необходима, если min \bfr fly| > min \bj, fl,-], откуда непосредственно следует данное в § 45 простое правило» (Прим. ред.) 7 Р. Беллмаи, С. Дрейфус
194 СГЛАЖИВАНИЕ И СОСТАВЛЕНИЕ РАСПИСАНИЙ [гл. Ш 1. Записав значения at и Ь-х в двух вертикальных ко- колонках (таблица 3.6). Таблица 3.6 i 1 2 N ai bi 2. Отыскать среди значений а{ и bt наименьшее. 3. Если таковым окажется одно из ah поставить соответ- соответствующую деталь первой. 4. Если это l?i — поставить соответствующую деталь по- последней. 5. Вычеркнуть оба значения at и Ь; из списка. 6. Повторять этот процесс с 2/7 — 2 оставшимися вели- величинами. 7. В случае нескольких минимальных элементов для опре- определенности выбрать деталь с меньшим номером. Когда ai = bi, упорядочивать детали по значению at. 46. ПРИМЕР Рассмотрим следующий пример: i 1 2 3 4 5 ai 4 4 30 6 2 5 1 4 30 3
47] ЗАКЛЮЧЕНИЕ На первом шаге мы имеем: 195 На следующем шаге 1 3 4 5 2 4 30 6 2 4 bi 5 4 30 3 1 i 5 1 3 4 2 ai 2 4 30 6 4 bi 3 5 4 30 1 Теперь мы видим, что оптимальной перестановкой будет E, 1, 4, 3, 2). 47. ЗАКЛЮЧЕНИЕ В этой главе мы ставили перед собой цель показать, что ряд задач составления расписаний, одни из которых действи- действительно называются задачами составления расписаний, а дру- другие маскируются под названием задач сглаживания, замены оборудования и управления запасами, могут быть решены методами динамического программирования. Большинство из этих задач сводится к несложному машинному счету, в дру- других же задачах этого класса метод функциональных уравне- уравнений позволяет найти явные выражения для оптимальной поли- политики и функции дохода. Мы уже подчеркивали ранее, что одна из важнейших причин, по которой мы обратились к этим простым моделям экономических процессов, состоит в том, что полученные решения помогают получить приближенные политики в более сложных моделях. Кроме того, анализ чувствительности этих решений приведет нас к построению более общих моделей, 7*
196 СГЛАЖИВАНИЕ И СОСТАВЛЕНИЕ РАСПИСАНИЙ [ГЛ. III КОММЕНТАРИИ И БИБЛИОГРАФИЯ § 1. Рассматриваемому вопросу посвящено большое число ра- работ. Заинтересованному читателю мы рекомендуем следующие работы: R. Bellman, Dynamic Programming, Princeton University Press, Princeton, New Jersey. 1957 [русский перевод: Р. Б е л л м а н, Динамическое программирование, ИЛ, 1960]. R. Bellman, Mathematical aspects of scheduling theory, J. Soc. Indust. Appl. Math., vol. 4, 1956, pp. 168—205. K. J. A r г о w, S. К a r 1 i n and H. Scarf, Studies in the Mathe- Mathematical Theory of Inventory and Production, Stanford, California, 1958. Кроме того, ряд работ по этим вопросам, касающихся матема- математической стороны задач, можно найти в выпусках журналов: Journal of the Operations Research Society of America, Manage- Management Science, Naval Research Logistics Quarterly, Econometrica u Journal of the Society for Industrial and Applied Mathema- Mathematics. § 4. Для изучения некоторых непрерывных вариантов задачи сглаживания см. главы 4, 5 книги Эрроу, Карлина и Скарфа, упо- упомянутой выше. Перечислим некоторые другие статьи: R. Bellman, I. Glicksberg and О. Gross, Some problems in the theory of dynamic programming — a smoothing problem, J. Soc. Indust. Appl. Math., vol. 2, 1954, pp. 82—89. E. H. Bowman, Production scheduling by the transportation method for linear programming, Operations Research, vol. 4, 1956, pp. 100—103. А. С h a r n e s, W. W. Cooper and B. Mellon, Model for optimizing production by references to cost surrogates, Econo- Econometrica, vol. 23, 1955, pp. 307—323. G. B. Dantzig and S. Johnson, A Production Smoothing Problem, The RAND Corporation, Research Memorandum RM-1432, 1955. A. Hoffman and W. Jacobs, Smooth patterns of production, Management Science, vol. 1, 1954, pp. 86—91. S. M. Johnson, Sequential production planning over time at minimum cost, Management Science, vol. 3, 1957, pp. 435—437. • W. К а г u s h and A. Vaszonyi, Mathematical programming and service scheduling, Management Science, vol. 3, 195/7 pp. 140—148. F. M о d i g 1 i a n i and F. H о h n, Production planning over time and the nature of the expectation and planning horizon, Econo- Econometrica, vol. 23, 1955, pp. 46—66. F. M о г i n, Note on an inventory problem, Econometrica, vol. 23, 1955, pp. 447—450.
КОММЕНТАРИИ И БИБЛИОГРАФИЯ 197 § И. Задачи аналогичного характера возникают в статистиче- статистической механике. Освещение как теоретической, так и вычислительной сторон этих задач можно найти в работе: J. W. С a h n and R. К i k u с h i, Theory of Domain Walls in Orde- Ordered Structures — II. Pair Approximation for Nonzero Temperatures, Hughes Research Laboratories, Research Report, No. 177, 1961. § 12. Задаче о замене оборудования посвящено большое число работ. Традиционные подходы к решению и прикладная сторона вопроса изложены в книге: Т. W h i t i n, The Theory of Inventory Management, Princeton Uni- University Press, Princeton, New Jersey, 1953. Вариационные методы, использующие непрерывную модель, чи- читатель найдет в статье: A. А 1 с h i a n, Economic Replacement Policy, The RAND Corpora- Corporation, Report R-224, April 12, 1952. Изложенный в настоящей главе метод описан в статьях: R. Bellman, Equipment replacement policy, J. Soc. Indust. Appl. Math., vol. 3, 1955, pp. 133—136. S. Dreyfus, A generalized equipment study, J. Soc. Indust. Appl. Math., vol. 8, 1960, pp. 425—435. Этой задаче посвящены также работы: B. J. Marks, A Dynamic Approach to the Prediction of Demand for Replacement Parts. 1960 (не опубликовано). D. W, J о r g e n s о n, Optimal Scheduling of Replacement and Checkout — IV; Computation by Successive Approximations, 1960 (не опубликовано). D. W. Jorgenson and R. R a d n e r, Optimal Replacement and Inspection of Stochastically Failing Equipment, Studies in Ap- Applied Probability and Management Science, Stanford, Stanford Univ. Press, 1962. T. Fukao, T. Yamazaki and S. К i m u r a, An application of dynamic programming to economic operation problem of a power system, Electrotechnical J. of Japan, vol. 5, no. 2, 1959, pp. 64—68. T. Fukao and T. Yamazaki, A computational method of economic operation of hydrothermal power system including flow-interconnected hvdropower plants (Dynamic linear program- programming method), Electrotechnical J. of Japan, vol. 6, 1960, pp. 22—26. T. Fukao, Operation problems of flow — interconnected hydro- plants systems, II, Bull. Electrotechnical Lab., vol. 24, no. 6, 1960; III, no. 7. A. J. True love, Strategic reliability and preventive maintena- maintenance, Operations Research, vol. 9, 1961, pp. 22—29. A. J. R о w e, Application of Computer Simulation to Sequential Decision Rules in Production Scheduling, System Development Corporation, SP, 112, 1959,
188 СГЛАЖИВАНИЕ И СОСТАВЛЕНИЕ РАСПИСАНИЙ [гл. Ш Y. F u к u d a, Optimal Disposal Policies, Naval Res. Logist. Quart., vol. 8, N 3, 1961, pp. 221—227. А. К a u f m a n n, Methodes et Modeles de la Recherche Operatio- nelle, Dunod, Paris, 1959. W. S i n d e n, The replacement and expansion of durable equip- equipment, J. Soc. Indust. Appl. Math., vol. 8, 1960, pp. 466—480. W. S z w a r c, Solution of the Akers — Friedman scheduling prob- problem, Operations Research, vol. 8, 1960, pp. 782—788. E. W. Barankin and J. Denny, Examination of an Inventory Model Incorporating Probabilities of Obsolescence, University of California Statistical Laboratory, 1960. E. W. В а г а п к i n, A Delivery-lag Inventory Model with an Emergency Provision, Naval Res. Logist. Quart., vol. 8, № 3, 1961, pp. 285—311. R. E. L e v i t a n, The optimum reject allowance problem, Mana- Management Science, vol. 6, 1959, pp. 172 — 186. R. Me Naughton, Scheduling with deadlines and loss functions, Management Science, vol. 6, 1959, pp. 1—12. R. R a d n e r, Opportunistic Replacement of a Single Part in the Presence of Several Monitored Parts, Management Science, vol. 10, N 1, 1963. Более реалистическая ситуация, когда темпы ремонта и старе- старения заранее известны не полностью, также может быть проанали- проанализирована с помощью динамического программирования. См. поэтому поводу R. Bellman, Adaptive Control Processes, A. Guided Tour University Press, Princeton, New Jersey, 1961 [русский перевод: P. Б е л л м а н, Процессы регулирования с адаптацией, Изд-во «Наука», 1964]. Очень интересный тип задачи о замене и ремонте был недавно рассмотрен Д. Дж. Уайтом. Эта задача состоит в нахождении мо- момента обследования системы. Функциональное уравнение имеет вид fn (х) = max Т (/л, х, fm (x)). ТП : § 20. В таком виде задача была поставлена А. В. Каном A. S. С a h n, The warehousing problem, Bull. Amer. Math. Soc, vol. 54, 1948, p. 1073 и обобщена в статье: А. С h a r n e s and W. W. Cooper, Generalization of the Ware- Warehousing Model, Operat. Res. Quart., vol 6, № 4, 1955, pp. 131—172. Приведенное решение задачи содержится в статьях: R. В е 11 m a n, On the theory of dynamic programming: a warehousing problem, Management Science, vol. 2, 1956, pp. 272— 276. S. Dreyfus, An analytic solution of the warehousing problem, Management Science, vol. 4, 1957, pp. 99—10^. Аналитическое решение приводится во второй -из этих статей.
КОММЕНТАРИИ И БИБЛИОГРАФИЯ 199 § 30. Задача поставщика решалась как методами динамиче- динамического программирования, так и другими методами. См. по этому вопросу W Jacobs, The caterer problem, Naval Research Logs. Q., vol. 1, 1954, pp. 154—165. J. W. G a d d u m, A. J. Hoffman and D. S о k о 1 о w s k y, On the solution to the caterer problem, ibid. W. P r a g e r, On the Caterer Problem, Manag. Sci, vol. 3, № 1, 1956, pp. 15—23. Метод, используемый в §§ 30—37, содержится в работе: R. Bellman, On a dynamic programming approach to the cate- caterer problem — I, Management Science, vol. 3, 1957, pp. 270—278. Он возник из аналитического решения для случая #=1, /э = 2, полученного О. Гроссом. Этот метод замечателен тем, что может быть использован в ряде ситуаций, где решение, подска- подсказываемое «здравым смыслом», проваливается. Кроме того, его основные идеи применимы и во многих других ситуациях. См. § 14 главы VIII и R. Bellman, Some new techniques in the dynamic programming solution of variational problems, Q. Appl. Math., vol. 16, 1958, pp. 295—305. R. Bellman and R. К a 1 a b a, Reduction of dimensionality, dy- dynamic programming and control processes, J. Basic Engineering, March 1961, pp. 82—84. § 38. Это решение содержится в нескольких неопубликованных работах С. Дрейфуса. Оно эквивалентно решению Била, см. Е. М. В е а 1 е, Letter to the Editor, Management Science, vol. 4, 1957, p. 110. § 39. Обширную библиографию по рассматриваемому вопросу можно найти в книге Эрроу, Карлина и Скарфа, на которую мы ссылались выше, а также в главе 5 книги Беллмана. Первые работы в этой области: К. J. А г г о w, Т. Е. Harris and J. Marschak, Optimal inventory policy, Econometrica, July 1951. A. Dvoretzky, J. К i e f e r and J.Woliowitz, The inventory problem, I, II, Econometrica, vol. 20, 1952, pp. 187—222. R. Bellman, I. Glicksberg and O. Gross, On the optimal inventory equation, Management Science, vol. 2, 1955, pp. 83—104. Первое содержательное математическое рассмотрение задачи управления запасами содержится в статье Эрроу, Харриса и Мар- Маршака. Первые варианты теорем существования и единственности и случай неизвестного распределения спроса рассмотрены Дворецким, Кифером и Вольфовицем. Функциональные уравнения впервые были использованы для определения структуры оптимального решения
200 СГЛАЖИВАНИЕ И СОСТАВЛЕНИЕ РЛСПИСМШЙ [ГЛ. Ш Беллманом, Гликсбергом и Гроссом; Э1и исследования были широко развиты Эрроу, Карлином и Скарфом в их книге. Некоторые последние результаты приведены в этой книге и в следующих работах: В. L e f k о w j t z et al., The Development and Implementation of Advanced Inventory Control Procedures, Stanford Procedures, Stanford Research Institute, 1960. G. Ha die у and Т. М. W h i t i n, A Dynamic Model for Procu- Procurement, Stanford Research Institute TM-13, 1961. G. H a d 1 e v and Т. М. W h i t i n, Optimal Procurement Policy under Conditions of Repetitive Demand Cycles, Stanford Research Institute TM-14, 1961. S. G. A11 e n, A Redistribution Model with Set-up Charge, Management Science, vol. 8, N 1, 1961, pp. 99—108. P. R. Wi n t e r s, Constrained Inventory Rules for Production Smoot- Smoothing, ONR Research Memorandum No. 79, Carnegie Institute of Technology, 1961. \V. S a d о w s к i, A Few Remarks on the Assortment Problem, Manag. Sci., vol. 6, № 1, 1959, pp. 13—24. H. К a s u g a i and Т. К a s e g a i, Note on minimax regret or- ordering policy, J. Oper. Res. Japan, vol. 3, 1961. pp. 155—169. H. Scarf, Optimal Policies for the Inventory with Stochastic Lead Time, Manag. Sci., vol. 8, № 1, 1961, pp. 35—57. M. В е с к m a n n, An Inventory Model for Arbitrary Interval and Quantity Distributions of Demand, Planning Research Corpora- Corporation, Los Angeles, September 1960. Y. F u к u d a, Bayes and Maximum Likelihood Policies for a Multi — echelon Inventory, Planning Research Corporation, Los Angeles, June 1960. A. J. Gradwohl, Case Studies on the Multi-echelon inven- inventory Problem, Planning Research Corporation, Los Angeles, De- December 1959. Y. F u к u d a, Optimal Disposal Policies, Naval Res. Logist. Quart., vol. 8, № 3, 1961, pp. 221—227. Обсуждение математической теории управления запасами с чисто описательной стороны читатель найдет в книге: Р. А. Р. Мог an, The Theory of Storage, Methuen and Co., 1959, в которой дается ряд других ссылок. Наконец, назовем еще неопубликованную работу Д. Айглхарта, касающуюся асимптотического поведения решения уравнений типа D.103) при п—*оо. После того как было установлено, что fn^nc при п —* оо, центр тяжести исследований переместился в область установившейся политики. Кроме того, эта политика может быть найдена другими путями, которые позволяют обходить неприятные стороны динамического прО1раммирования, связанные с размер- размерностью.
КОММЕНТАРИИ И БИБЛИОГРАФИЯ 201 § 41. СМ. Н. М. Wagner and Т. М. W h i t i n, Dynamic versions of eco- economic lot size model, Management Science, vol. 5, 1958, pp. 89-96. § 42. Решение, приведенное здесь, впервые получено другим путем Джонсоном. См. S.Johnson,, Optimal two-andthree-stage production schedules with setup times included, Naval Research Logs. Q., March 1954. Дальнейшие результаты и ссылки см. в работах: F. М. Т о n g e, A Heuristic Program for Assembly Line Balancing, The RAND Corporation, Paper P-1993, I960. R. Bellman, Mathematical aspects of scheduling theon, J. Soc. Indust. Appl. Math, vol. 4, 1956, pp. 168—205. B. G i f f 1 e r, Mathematical Solution of Production Planning and Scheduling Problems, IBM Technical Report, Advanced Systems Development Division, 1960. I. Nabeshima, The order of n items processed on m machines, J. Oper. Res Soc. Japan, vol. 3, 1961, pp. 170—175; vol. 4, 1961, pp. 1-8. Рассмотрение стохастических процессов принятия решений дано в работах: Е. S. P h е 1 р s, The Accumulation of Risky Capital: A Discrete — time Sequential Utility Analysis, Cowles Discussion Paper, 1961. M. S h u b i k, Approaches to the study of decision-making rele- relevant to the firm, J. Business, vol. 34, 1961, pp. 101—118. ДОПОЛНИТЕЛЬНАЯ ЛИТЕРАТУРА Сравнительно элементарное изложение теории управления за- запасами содержится в недавно вышедшей книге G. H a d 1 е у, Т. М. W h i t i n, Analysis of inventory systems, Prentice—Hall, Englewood Cliffs, N. J., 1963. Из новых работ по теории замены оборудования отметим, на- например, D. \V. J о г g e n s о n, J. J. M с С а 11, Optimal replacement po- policies for a ballistic missile, Management Science, vol 9, N 3, 1963. R. Radner, D. W. Jorgenson, Opportunistic replacement of a single part in the presence of several monitored parts, Mana- Management Science, vol. 10, N 1, 1964, pp. 70—84.
ГЛАВА IV МЕТОДЫ ОПТИМАЛЬНОГО ПОИСКА I. ВВЕДЕНИЕ В предыдущих главах мы неоднократно встречались с уравнением вида /n (*) = max g (x9 уу fN_ {(y))y у где максимум находился прямым перебором всех возможно- возможностей. Если у принимает различные значения уь уь ..., ум, то такой способ требует вычисления g(xy уь /н__\(ух)), g{x> Уь fN-\{y>ij) и т- Д- и сравнения полученных значений. При больших М эти операции требуют много времени. Возникает вопрос о более эффективном способе опреде- определения положения максимума. Это — важный вопрос, ибо воз- возможность решения задачи тем или иным методом зависит от количества времени, необходимого для получения решения. Чтобы обеспечить точность решения, мы часто можем испро- испробовать на каждом шаге большое число политик. Следова- Следовательно, нам важно изучить сам процесс поиска. Мы покажем, что в одном важном и часто встречающемся случае суще- существуют способы, феноменально сокращающие требуемое время. Попутно с определением положения максимума функ- функции мы изучим задачу об определении нуля монотонно убы- убывающей функции. Перечисленные вопросы являются частными случаями общей задачи поиска'—задачи чрезвычайной трудности, даже когда речь идет только о ее постановке. Весьма занятно, что при численном решении задач динамического программи-
3] ПРОЦЕСС НАХОЖДЕНИЯ ТОЧКИ МАКСИМУМА 203 рования возникаю! новые задачи динамического программи- программирования. Результаты и методы этой главы принадлежат О. Гроссу и С. Джонсону. 2. УНИМОДАЛЬНЫЕ ФУНКЦИИ Прежде всего введем понятие унимодальной функции. Определение. Функция /(х) унимодальна на интервале [0, Ь\ если существует значение дг0, 0 ^xQ^b, такое, что f(x) или строго возрастает при х^х0 и строго убывает при х^>Хц или строго возрастает при х<^х^ и строго убывает при х^х{). Наиболее важным примером функций 1акой природы являются вогнутые функции. 3. ОДНОМЕРНЫЙ ОПТИМАЛЬНЫЙ ПРОЦЕСС НАХОЖДЕНИЯ ТОЧКИ МАКСИМУМА Очевидно, что свойство унимодальности никогда не дает нам возможности вычислить точное значение максимума/(х), но оно позволит очень точно определить положение точки х0. Теорема 1. Пусть у =f(x) является унимодальной на интервале 0^x^Ln. Предположим, что Ln есть число, обладающее тем свойством, что точка, в кото- которой f (х) достигает максимума, может быть локализо- локализована внутри интервала единичной длины путем вычисле- вычисления и взаимного сравнения не более п значений f(x). Введем величину Fn = snpLn. D.1) Тогда F F + Fn_, при и /?0 = /?1==1. Числа Fn — числа Фибоначчи, которые часто встречаются в самых неожиданных местах. Мы рассмотрим их свойства ниже. Доказательство. Воспользуемся методом математиче- математической индукции. Заметим, что Ffl=l и /71=1,так как един- единственное значение унимодальной функции, по существу, не дает никакой дополнительной информации относительно поло- положения точки максимума.
204 методы оптимального поиска [гл. iv Фиксируем я^2 и вычислим у{ =f(xl), y2=f(x,2), где xh х2— две точки из интервала @, Ln) и хх<^х^. Если У1^>Уъ то точка максимума находится в интервале [0, х2], в то время как при у%^>У\ точка максимума лежит в интер- интервале [xh Ln]. Если у{ =уь то выбираем любой из этих О Рис. 53. р интервалов, даже если нам известно, чго максимум дости- достигается на интервале [xh х.г\ Теперь мы имеем подынтервал интервала [0, Ln] и значе- значение f(x) в одной из его внутренних точек. Для п = 2> L% = 2— s, где г мало, можно вы- выбрать хх= 1 — е, х% = 1. Это показывает, что sup I2 ^ 2. С другой стороны, из вышесказанного следует sup L2<^2-j-8 для любого &^>0. Следовательно, Fz=2=Fl-\-F{). D.2) Далее предположим, чго Fk = = Fk_! -j- Fk_v для k = 2,..., n — 1. —• Основываясь на этом предположении, хр мы хотим показать, что fn==fnl-^fni, D.3) Допустим, что мы вычислили f(x) в двух точках хх и х2 интервала [0, Ln] (см. рис. 53). Если у\^>у* то мы нахо- находимся в ситуации, изображенной на рис. 54. Отсюда x>2<^Fn_u так как мы можем выбрать еще только п — 2 точек, поскольку наш первый выбор из п — 1 возможных точек пал на хх. Кроме того, xx<^Fn_b так как максимум должен находиться на интервале @, хх) и имеется возможность выбрать еще только п — 2 точек. Аналогично, если y<i^>yi, мы имеем Ln—xl<^Fn_v Таким образом, откуда Fn = sup Ln ^ /Vi + Fn-* D.5) Рис. 54.
4] ЧИСЛА ФИБОНАЧЧИ 205 Остается вывести обратное неравенство. Положим n_!. D.6) Так как е можно выбрать произвольно малым, то Из этих двух неравенств следует требуемое равенство. Кроме того, отсюда мы получаем для любого малого е опти- оптимальную процедуру поиска. Сравнив /(х^ и /(х2), мы полу- получаем интервал длины Ln_l= I у Fn_\ и значение функ- функции в первой точке оптимального поиска внутри меньшего интервала. Продолжая таким же образом, имеем /^ = = A — ~) Fk для 2<^k<in. Наконец, 7.2 = A —1А F* = = 2 — s, так что последний интервал имеет единичную длину. 4. ЧИСЛА ФИБОНАЧЧИ Несмотря на то, что первые члены последовательности {Fn}> порожденной рекуррентным соотношением Fn = Fn_x-\-Fn^, F0 = Fl=li D.7) не велики и вначале растут медленно: 1, 1, 2, 3, 5, 8, 13, 21, 34, 55..., D.8) все же уже /\20 превышает 10 000. Таким образом, при ко- количестве точек, не превышающем 20, мы всегда можем найти интервал, длина которого составляет 10~4 длины первоначаль- первоначального и который содержит точку максимума. Чтобы определить аналитический вид Fn, заметим, что гп является решением уравнения D.7) без граничных условий, если г* = г+1. D.9) Эти значения г равны A ± |/ 5)/2. Следовательно, если мы положим
206 методы оптим\льного поиска [гл. iv то, подобрав соответствующим образом значения для q и сь мы получим решение D.7). Таким образом, и мы имеем: Так как (/~5-|-1)/2> 1 и (/~5 — 1)'2< 1, мы видим, что при больших п величина Fn равна (—-—=— ( —-~ с большой точностью. Отсюда следует, чго ценой дополни- дополнительных вычислений небольшого объема можно получи 1ь экспоненциальное возрастание точное]и. Отношение FnjFn_\ стремится к (v/5-]-l)/2, что приближенно равно 1,62. Сле- Следовательно, первые два значения хх и х% следует взять на расстоянии 0,62 L от концов интервала [0, L]. Такая политика равномерного выбора является превосходной приближенной политикой для всего процесса, за исключением нескольких последних шагов, когда уже безразлично, употребляется наи- наилучшая политика или нет. В частности, эта простая политика поиска приемлема для постановки на вычислительные машины. 5. ЗОЛОТОЕ СЕЧЕНИЕ Возьмем на прямой отрезок [0, L] и разделим его на две части в отношении (j/5-j-l)/2. Греки считали, что прямо- прямоугольник с таким отношением сторон имеет наиболее при- приятные пропорции, и часто использовали его в своей архитек- архитектуре. 6. ДИСКРЕТНЫЙ СЛУЧАЙ Рассмотрим случай, когда функция f(x) определена на дискретном множестве точек. В этом случае мы докажем сле- следующую теорему. Теорема 2. Пусть y=f(x)—унимодальная функ- функция, определенная на дискретном множестве, содержа-
7] нули функций 207 щем Ип точек. Пусть Нп — целое число такое, что мак- максимальное значение функции f (х) может быть всегда найдено с помощью вычисления f(x) в п точках и срав- сравнения этих значений. Пусть Кп = тахНп, D.13) тогда Kn = —l+Fn+l, л 3*1. D.14) Доказательство. Перенумеруем точки в некотором порядке числами 1, 2,..., Ип. Прежде всего ясно, что К{=\, /С.2 = 2, КЛ = 4. Возьмем теперь /z^>3 и предпо- предположим, чго для k<^n мы имеем: Вычислим f(x) в iочках х{ и дг2. Как и при доказатель- доказательстве теоремы 1, получаем, что *!<#«-*+1, Нп-х^Кп-ь D.15) откуда = Fn+l4-l. D.16) Это максимальное значение достигается* если Xi = Fn { и x.2 = Fn. Таким образом, мы доказали теорему 2 и получили оптимальную поли гику поиска. 7. НУЛИ ФУНКЦИЙ Интересно исследовать, применимы ли подобные идеи для построения метода поиска нуля функции на некотором интер- интервале, если известно, что она монотонно убывает на этом ин- интервале. Оказывается, что для того, чтобы корректно сфор- сформулировать эту задачу, необходима дополнительная инфор- информация. Обратимся к следующей задаче. «Пусть f (х) — непрерывная выпуклая функция на интер- интервале [0, L]. Ничего более относительно f(x) не известно. Однако она может быть вычислена в любой точке. Пусть также /@)>0, /(/,)<0. Фиксируем целое число п^>0. Как с наибольшей точно- точностью определить корень функции f(x) в интервале @, L)
208 МЕТОДЫ ОПТИМАЛЬНОГО ПОИСКА [ГЛ. IV за п шагов, если каждый шаг состоит в вычислении значе- значения функции f(x) в любой выбранной точке и сравнении этого значения с ранее полученными?» 8. ФУНКЦИОНАЛЬНЫЕ УРАВНЕНИЯ Уточним задачу, сформулировав ее следующим образом. Минимизировать максимальную длину интервала, относительно которого после п последовательных наблюдений можно утверждать, что он содержит нуль. Не ограничивая общности, всегда можно рассматривать кривую вида, изображенного на рис. 55. Здесь /@)=1, ; /A) = — Г, Г>0. Так как функция / выпукла, ее нуль дол- должен находиться в промежутке [0, Щ где №=1/A-f Y). Если мы можем сделать ровно одно наблюдение (п= 1), мы выбираем точку х из @, W) и вычисляем f(x). Ниже мы покажем, как опти- оптимальным образом выбрать х. Из простых соображений мож- можно заключить, что нет смысла на- наблюдать / вне интервала, внутри которого находится нуль функции. Выбрав х и вычислив f(x), мы имеем один из следующих слу- случаев. (Случай, когда /(х) = 0, ко- конечно, наилучший из возможных.) Случай 1. Если /(лг) = т;^>0, то, соединяя прямой линией известные точки на графике /, получаем вследствие выпуклости функции /(х), что ее корень находится в интер- интервале E, W) (рис. 56). Случай 2. Если f(x) = — v<^0, то график будет аналогичен изображенному на рис. 57 и корень будет нахо- находиться в интервале (max @, 5"), W"). Пусть S" = max@, Sf). Если х — последняя испытуемая точка (т. е. #=1), то в соответствии с нашей целью она выбирается так, чтобы минимизировать максимально возможное, значение величины max (W — 5. W" — S'). Рис. 55.
8] ФУНКЦИОНАЛЬНЫЕ УРАВНЕНИЯ 200 Прежде чем вдаваться в алгебраические детали решения для л=1, рассмотрим общий n-шаговый процесс. В каждом из случаев, показанных на рис. 55, 56, все существенные данные могут быть выражены через элементы основного тре- треугольника, зависящие от двух параметров, следующим образом. Обращаясь к рис. 56, мы можем заключить, что график/ лежи г выше отрезка vS и ниже отрезка vW'Y (здесь точки О х S W\\ Рис. 56. х ^ W Рис. 57. и значения х и f(x) обозначены одинаковыми буквами). Про- Проведем теперь отрезок SY\ он может пересекать, а может и не пересекать кривую y=f(x), но если он пересекает кри- кривую в некоторой точке, например в точке Р> то мы можем, не теряя никакой информации, заменить дугу кривой, лежа- лежащую ниже PY, на PY. Этот прием не нарушает условия выпуклости и включает худший из возможных случаев, что можно показать, исходя из простых соображений, основан- основанных на наших сведениях о значениях функции на каждом шаге. Таким образом, все существенные данные могут быть вы- выражены через элементы треугольника vSY. Так как задача инвариантна относительно изменения масштабов по горизонтали и вертикали, треугольник vSY можно заменить стандартным треугольником, определенным двумя параметрами Y и 5, как показано на рис. 58.
210 МЕТОДЫ ОПТИМАЛЬНОГО ПОИСКА [ГЛ. IV Аналогично во втором случае (рис. 57) график / лежит выше SV и ниже lW'v'. Проведем отрезок прямой между / и 5' и заменим часть графика функции /, лежащую ниже этой линии, отрезком прямой от / до точки пересечения. Это не повлияет на выбор следующих значений х, так как все эти значения должны быть выбраны из минимальных интервалов, содержащих корень функции, что очевидно. Таким об- образом, во втором случае после со- соответствующего изменения масшта- масштаба мы приходим к другому пред- представлению, показанному на рис. 58. Определим теперь функцию двух переменных 5 и У. Rn(Sy У) — минимальная длина интервала, на котором мы можем гарантировать наличие нуля любой выпуклой (J ункции/, заданной на интервале [0, 1], причем /@)=1, /A) = —К<0, если известно, что корень больше 5 и мы должны вычислить функцию в п точках. Рис. 58. D.17) Если я = 0, то мы, очевидно, имеем: ^о ($> У) = j i у 5 D.18) Далее, используя принцип оптимальное!и и учитывая измене- изменения масштаба, получаем при п^>0 рекуррентное соотношение Rn(S, Y) = min max l 1-5 max A — х) X v У D.19) Верхнее и нижнее выражения в фигурных скобках относятся соответственно ко второму и первому случаям. Изменение масштаба производится элементарным образом из подобия треугольников.
ФУНКЦИОНАЛЬНЫЕ УРЧВШШПЯ 211 Области изменения переменных 5, К соответственно будут Чтобы привести выражение D.19) к виду, удобному для вычислений на машине Джонниак, была сделана следующая замена переменных: W = r±~v, ?яE, W) = Rn(S, К), D.20) откуда 1 Дополнительная замена переменных v и v' сводит систему к следующей: cpo(S, W)=W—S, х max срл-i W(\—t) С5ЛE, W)= min max' S^W W(\—x) + x — A-х) max t t' — D.21) где Затем функции yn(S, W) были вычислены для п=\, 2, 3, 4 с помощью дискретной аппроксимации с различными сетками и линейной интерполяции. Минимизирующие значения х запоминались, так как они составляют основу нашей оптимальной политики, т. е. х* = = x*(Sy W) есть точка, в которой мы вычисляем неизвестную функцию /, если известно, что корень лежит в интервале {S, W) нашего основного треугольника и делается п вычис- вычислений нашей функции. Точка х*, конечно, сама находится в основном треугольнике. Чтобы сохранить общность, мы должны отнести наши выкладки к исходному масштабу. Если pn(S9 У) обозначает отношение, в котором точка х* делит расстояние между 5 и W, то, очевидно, , У) = x*(S, V)- W—S
212 МЕТОДЫ ОПТИМАЛЬНОГО ПОИСКА [гл. IV где №=1/A -j- У). Теперь легко вычислить положение^ в исходном масштабе и, таким образом, получить один цикл процесса, который мы коротко опишем ниже. Графики функций Rn@, У) и р„@, У) для /*=1, 2,3,4 читатель найдет ниже (рис. 59, 60). 9. ЧАСТНЫЙ СЛУЧАЙ л = 1 Мы начнем настоящий параграф с нескольких замечаний, имеющих целью прежде всего оправдание некоторых из пред- предположений, явно или неявно сделанных при выводе написан- написанных выше функциональных уравнений. Мы закончим настоящий параграф краткими пояснениями относительно частного случая п=\, 5=0, который может служить прекрасной проверкой правильности расчетов, про- проведенных па машине Джонниак. Итак, переходим к заме- замечаниям. 1. Предположим, что мы находимся на некоторой стадии оптимального последовательного минимаксного поиска; нам известны значения функции f в нескольких точках, и мы должны указать следующую точку. Пусть а и b обозначают ближайшие точки, соответственно справа и слева от мини- минимального интервала (S, W), который, как нам известно, содер- содержит корень. Тогда при оптимальной процедуре х выбирается из интервала (а, Ь). Чтобы убедиться в этом, нам нужно только показать, что так как неизвестная функция / может быть кусочно-линейной (одна из возможностей) вне (а, Ь), то, очевидно, любое следующее ее вычисление в этой области не добавляет никакой информации относительно характера поведения / внутри (а, Ь), касающейся расположения ее корня, кроме информации, уже данной величинами а> b, f(a), f(b), S и W или любым из предыдущих вычислений. Аналогичными рассуждениями можно показать, что дальнейшие вычисления следует производить в интервале E, W). 2. При рассмотрении случая 2 молчаливо предполагалось, что УХ<^У или, иначе говоря, что прямая SY имеет отри- отрицательный наклон, как показано на рисунке. Снова на осно- основании некоторых простых соображений можно показать, что наихудшая ситуация будет в случае, когда / монотонна, т. е. когда график / лежит выше прямой SV. Именно этим усло- условием определяются границы переменной v в верхней строке
10] случ\п /?=1, S=0 213 функционального уравнения для /?,г Точно такие же сообра- соображения позволяют нам привести функциональное уравнение к довольно простому виду и, таким образом, с помощью ре- рекуррентных вычислений найти оптимальную «политику». Но тем не менее эти соображения не дают возможности полу- получить оптимальную процедуру непосредственно из уравнения. 3. По-видимому, функциональное уравнение для Rn может быть существенно упрощено, если мы предположим, что мак- максимум в верхней строке уравнения всегда достигается на правом конце интервала изменения Rn(SY). При п=\ это Гправедливо. Однако для общего случая это утверждение не доказано и преобразованное уравнение для Фп было постав- поставлено на Джонниак в его настоящем виде. Результаты вычис- вычислений подтвердили правильность высказанного предпо- предположения. 4. Rn(S, У)— невозрастающая функция по каждой из переменных 5 и У в отдельности. Чтобы убедиться в этом, например, для первой переменной ?, замечаем, что по опре- определению Rn (Sy Y) при прочих равных условиях информация о том, что корень больше S\ содержится в информации о том, что он больше 5, если Sr<^S. Тогда на основе дополнитель- дополнительной информации при оптимальной процедуре мы гарантируем, что чем больше 5, тем короче окончательный интервал, т. е. Rn(S, Y)^Rn(S\ У), если S^>Sr. Аналогичными рассужде- рассуждениями можно показать, что Rn (?, Y) не возрастает и по У. 10. СЛУЧАЙ n = 1, S = 0 Теперь мы вкратце изложим некоторые результаты, полу- полученные для случая п=\, S=0. Мы избавим читателя от элементарных, хотя и громоздких алгебраических выкладок, а просто скажем, что определение Rt @, У) сводится к под- подстановке Rq (S, Y) = | , у — 5 в правую часть функционального уравнения, что при 5=0 дает относительно простую алгебраическую минимаксную задачу. Подстановка р = х(\ -j- У) при взятии минимакса дает следующее уравнение для оптимального значения отношения р
214 МЕТОДЫ ОПТИМАЛЬНОГО ПОИСКА [гл. IV" и переменной У: + Bр-1J = 0 D.22) при ограничениях ^ Так как дискриминант этого квадратного уравнения отно- относительно У равен 8рн, мы легко получаем следующую рацио- рациональную параметризацию кривой зависимости р и У: Р = 1 у D.23) Чтобы определить значение /0> заметим, что при У->со предельное полиномиальное уравнение получается, если при- приравнять к нулю старший коэффициент: р* _ 2р3 — 5р2 — 2р + 1 = 0. D.24) Это уравнение в интервале @, 1) имеет единственный корень, равный Из параметрического представления р получаем, что to=\ — /2р^ 0,250. Для контроля этого результата заметим, что значение tQ является наименьшим положительным корнем знаменателя в параметрическом выражении для У. Графики /?i @, У) и р\(У), полученные в результате руч- ручного счета по приведенным формулам, хорошо согласуются с результатами, полученными на Джонниак. К сожалению, однако, выбор недостаточно мелкой сетки из-за ограничен- ограниченности памяти Джонниак порождает накопленную ошибку, ко- которая вызывает постепенное смещение вверх на концах кривой р. Это обстоятельство учтено, и приводимый здесь график со- согласуется с теорией. К счастью, кривая R оказалась совер- совершенно нечувствительной к выбору шага сетки.
11] ОПИСАНИЕ ПРОЦЕССА ВЫЧИСЛЕНИЙ 215 Заметим, что дополнительную проверку вычислений можно провести при помощи легко получающихся соотношений которые оказались очень хорошо согласующимися с данными, полученными на машине Джонниак. 11. ОПИСАНИЕ ПРОЦЕССА ВЫЧИСЛЕНИЙ Опишем теперь один цикл вычислительной процедуры. Пусть нам известно, что f(a)= Ka>0, f(b) = — Yb, K6>0, где а<С^Ь, корень больше 5, и мы можем сделать еще п вычислений функции. Тогда мы можем утверждать, что ко- корень находится в интервале (S, W), где Если л = 0, вычисления прекращаются и выписываются значения 5, W. Если я^>0, вычисляется значение функции f(x) при = S-\-(W—S)pn№). Затем, если /(*)= Ух>0, пола- \'а' у гаем а=х, b' = b и S' = x-\-(x — а) -^—^-тг~- Если же У а — Ух f(x) = —Kv<^0, полагаем а=а, Ь' = х и, если Yx^>Yb, полагаем S' = S, в противном случае x — (b — x) Y* V 'Ь 'XI Наконец, полагаем п=п—1. Теперь мы снова имеем ситуацию, когда известно, что /(а')= >V>0, /(*') = - Уъ>* П'>0, где а'<Ь\ чго корень больше 5", и можно сделать еще п вычислений. На этом заканчивается цикл вычислений (первоначально S=a). В следующем параграфе мы на частном примере проил- проиллюстрируем действие этой схемы. Замечание. Приведенная процедура служит аппрокси- аппроксимацией действительной минимаксной процедуры. Теоретически
216 методы оптимального поиска [гл. iv корректная процедура вместо выражения Рл(уг1 B Ф°Р" муле для х включала бы pw ( ~а, ~ ], функция pn(S, У) определена выше. Так как окончательная функция мало чув- чувствительна к величине 5 при выборе рп (S, Y) в окрестности минимакса, приближение Рл@, V)^?n(S, Y) вполне оправдывается, и мы полагаем рп(К) = рл(О, К). Эга аппроксимация сводит задачу к более удобной для машин- машинного счета формуле. 12. ЧИСЛЕННЫЙ ПРИМЕР-СРАВНЕНИЕ С ВЫЧИСЛИТЕЛЬНЫМ МЕТОДОМ ДЕЛЕНИЯ ОТРЕЗКА ПОПОЛАМ Предположим, что нам желательно выделить интервал, содержащий нуль некоторой сложно вычисляемой функции/, определенной на интервале @, 1). Нам известно, чго / не- непрерывна, выпукла и что/@) = 1,/A) = —1. Однако, так как для получения значения эгой гипотетической функции в одной точке требуется час машинного времени, мы игнори- игнорируем тот факт, что на самом деле в нашем примере она за- задается сравнительно безобидным выражением I л I * \ Iх о\\ = тах — 1, U-т h—3 • Пусть мы можем сделать три вычисления функции f(x). 06- Y ращаясь к графику Rd (О, Y) при К = -~=1, мы видим, что можно найти интервал, содержащий корень и составляющий 0,01 длины первоначального интервала, т. е. интервал длины 0,01. Однако, так как график представляет наихудший из возможных случаев, можно ожидать, что мы получим гораздо большую точность, как и оказывается на самом деле. Перейдем к вычислениям. Цикл 1. а = 0, b=l, Ya = \, Yb=\, S=0, n = 3, от- откуда по нашей формуле №=0,5, и мы локализовали корень на интервале @, 0,5). Далее, х = 0-\- @,5 — 0)р3A) = = 0,5-0,148 = 0,074, и находим, что/@,074) = 0,76839 >0,
12] ЧИСЛЕННЫЙ ПРИМЕР 217 так что а'= 0,074, ft'= 1, °>074-°>76839 ^-0 074 6 — U,U / 4 Наконец // = 2. //шел 2. (Опускаем штрихи в обозначениях.) а= 0,074, ft=l, Ка = 0,76839, Yb=\, 5=0,31950, п = % и л wr лп-7 1 i 0,926-0,76839 откуда по нашей формуле и/= 0,074 -J — ' = t= 0,47636, и корень находится в интервале @,31950, 0,47636). Далее х= 0,31950 4- 0,15686pg f n _ * ) = 0,31950 -f 0,15686 X X 0,198 = 0,35066, и мы находим, что /@,35066) = — 0,04795 <0, так что а= 0,074, ft'= 0,35066 и так как Ул.< Yb, -п по^с A—0,35066) @,04795) Л оО, 0,35066 — ^ 1—004795 i = 0, Наконец, п'=\. Цикл 3. а = 0,074, ft = 0,35066, Ya = 0,76839, Kb = = 0,04795, 5=0,31950, п=\, откуда по нашей формуле IV/ ПЛ7/1 I @,35066 —0,074)-0,76839 поО/1/11 U7 = 0,074 + 0>7Ш9 ^ 0;47-95 = 0,33441, и корень на- находится в интервале @,31950,0,33441). Далее х= 0,31950 -f + @,33441-0,31950) Pl(-^g-]= 0,31950+ 0,01491 X X pj@,624) = 0,32440, и мы имеем, что/@,32440) = 0,02535 > >0, так что а'= 0,32440, ft'= 0,35066, 5" = 0,32440 -j- , @,32440 — 0,074) 0,02535 _ n QQOOЛ "» 676"839-0,02535 ~ ^66Z^' Цикл 4. а = 0,32440, ft = 0,35066, Ya = 0,02535, Yb = = 0,04795, 5=0,33294, ;z = 0; следовательно, по формуле IF поолп i @,35066 - 0,32440) 0,02535 W= 0,32440 Н 0,02535 + 0,04795 = °'33348> и корень находится в интервале @,33294, 0,33348). Так как п = 0, вычисления прекращаются.
218 МЕТОДЫ ОПТИМАЛЬНОГО ПОИСКА [гл. iv 13. ОБСУЖДЕНИЕ Так как метод нахождения корня путем деления проме- промежутка не требует выпуклости функции, еще до начала вы- вычислений ясно, что корень лежит на интервале @, 1), после первого измерения — на интервале @, 0,5), после двух вы- вычислений — на интервале @,25, 0,5) и, наконец, после треть- третьего — на интервале @,25, 0,375). Длины этих интервалов 1.0 OJ оо/ №, \ ' \ \ч \ ^ l\ Л— -\- \ \ к ^\ ^^ "—— ¦^-^ — 12 3 У Рис. 59. соответственно равны 1, 0,5, 0,25, 0,125. Сравнивая эти числа с полученными выше 0,5, 0,15686, 0,01491, 0,00054, мы ви- видим на этом примере, что наш метод имеет существенные преимущества. В действительности для выпуклой функции с теми же исходными значениями, что и в нашем примере, мы можем гарантировать, что при трех вычислениях мы по- получим интервал длины не более чем 0,01, как уже говорили. Сравнение этого числа с 0,125 показывает преимущество нашего метода (см. рис. 59 и 60).
141 ЗАДАЧА О ФАЛЬШИВОЙ МОНЕТЕ 219 14. ЗАДАЧА О ФАЛЬШИВОЙ МОНЕТЕ Широко известна следующая задача. Среди N монет одинакового внешнего вида имеется одна фальшивая. Найти минимальное число взвешиваний на ча- чашечных весах без гирь, достаточное для выделения этой фаль- фальшивой монеты. 0,5 0.4 03 S с? 0,2 1 Pn(SJ)* -—_ р; 7 " Р* • V — — 7 (У) У Рис. 60. Существует много остроумных решений этой задачи, в том числе и имеющих в основе секвенциальные *) про- процедуры. Весьма странно, что эта задача в случае двух или более фальшивых монет не привлекла достаточного внимания. Зна- Значение же ее велико, так как оно представляет собой один из простейших примеров секвенциальных задач испытания. Кроме того, эта задача насыщена как комбинаторными *) См. примечание на. стр. 21. (Прим. ред.)
220 методы оптимального поиска • [гл. iv трудностями, так и трудностями, неизбежно связанными с по- понятием «информации». Даже поверхностный анализ вскрывает громадную разницу в уровне сложности задач с одной и двумя монетами. Если мы имеем N монет, среди которых, как нам известно, имеется одна фальшивая, и чашечные весы без гирь, то единствен- единственная возможная операция состоит во взвешивании двух групп по к монет, выбранных из наших N монет. Если эти группы уравновешиваются, мы заключаем, что фальшивая монета на- находится среди оставшихся N — 2k монет. Если же они не уравновешиваются, то фальшивая монета находится в одной из этих групп. В простейшем случае, когда нам известно, что фальшивая монета тяжелее подлинной, независимо от исхода первого испытания, мы оказываемся в первоначальной ситуа- ситуации с меньшим числом монет. Эта инвариантность позволяет нам довольно просто применить для решения этой задачи динамическое программирование. Если имеются две или более фальшивых монет, задача становится гораздо более сложной, так как после испытания мы не можем сделать столь определенного вывода. В следующем параграфе мы детально исследуем этот слу- случай. Нашей целью будет выработать систематический метод применения динамического программирования для нахождения численного решения, определяющего оптимальную и субопти- субоптимальную политику испытаний. Для иллюстрации мы приведем несколько численных результатов, полученных на быстро- быстродействующей машине. 15. ЗАДАЧА С ДВУМЯ МОНЕТАМИ Перейдем к рассмотрению случая, когда среди N монет имеются две фальшивые и известно,- что фальшивая монета тяжелее обычной. Рассмотрим возможности, которые могут представиться при одном взвешивании двух наборов по k монет. Если эти наборы уравновешиваются, то либо в каждом из них имеется по фальшивой монете, тогда в группе остав- оставшихся N — 2k монет нет фальшивых, либо ни в одной из этих групп нет фальшивой монеты и обе они находятся среди оставшихся N — 2k монет. Если два набора по k монет не уравновешиваются, то либо один из них содержит фальшивую монету, тогда другая
16] АНАЛИТИЧЕСКАЯ ПОСТАНОВКА ЗАДАЧИ 221 находится среди оставшихся N — 2k монет, либо один из наборов содержит обе фальшивые монеты и среди остав- оставшихся монет нег фальшивых. Мы видим, что исходная информация разветвляется. При продолжении испытаний, если мы будем считать допустимой любую возможную программу испытаний, это разветвление разрастается с угрожающей скоростью. Заметим, что мно- множество возможных испытаний гораздо шире, чем в простей- простейшем случае с одной фальшивой монетой. После первого взвешивания мы могли бы выделить из каждой из трех групп но k, k и N — 2k монет некоторые подмножества и затем сравнить этот набор с аналогичным набором. Хотя большинство таких испытаний неэффективно и мажорируется более простыми политиками, нелегко опре- определить условия, которые вычеркивали бы такие испытания из числа допустимых, не приводя при этом к чрезмерной громоздкости. Кроме того, априори не ясно, почему некото- некоторые из подобных испытаний не могут оказаться полезными. Далее, однако, чтобы упростить исследование и ускорить вычисления, мы не будем допускать смешанных испытаний, подобных описанному выше. Мы будем предполагать, что ин- информация, полученная при испытании какой-либо группы монет, может быть использована при опытах над другими группами. 16. АНАЛИТИЧЕСКАЯ ПОСТАНОВКА ЗАДАЧИ Из сказанного выше следует, что независимо от того, какой информацией мы располагаем перед взвешиванием и каков результат отдельного взвешивания, мы оказываемся перед лицом нескольких альтернатив. Допустим с самого начала, что нам задано начальное распределение вероятностей р = [р^ ръ р2], где pi — вероятность того, что в наборе из N монет имеется точно i фальшивых, j = 0, 1, 2. Допуская, что эти фальшивые монеты распределены равномерно среди N монет, мы можем непосредственно вычислить соответствую- соответствующие вероятности для любой группы по k монет, взятой из основного набора. Мы будем рассматривать только политики следующего типа. Из данного набора в N монет, с которым связано вероятностное распределение p = [pQ, piy /л2], случайным
222 методы оптимального поиска [гл. iv образом выбираются две группы по k монет и кладутся на раз- разные чашки весов. Если они уравновешиваются (это означает, что в каждой из этих групп не более одной фальшивой мо- монеты), то исследуется одна из этих групп. Если в ней нег фальшивой монеты, то другая группа из k монет также со- состоит из правильных монет, а остается исследовать группу из N — 2k монет. Если в первой группе найдена фальшивая монета, то вторая должна находиться в другой группе из k монет и нет надобности исследовать N — 2k оставшихся монет. Если две первоначальные группы не уравновешиваются, переходим к поискам фальшивой монеты в более тяжелой группе. Если в ней обнаружится одна фальшивая монета, то вторая группа не имеет фальшивых монет и мы пере- переходим к поискам второй фальшивой монеты среди N — 2k монет. Если в первой группе обнаружатся две фальшивые мо- монеты, нет надобности исследовать остальные группы. Прежде чем выписывать функциональное уравнение, ко- которое мы используем для нахождения оптимального значе- значения ky введем следующие обозначения: //v(jpo> Рь Pi)— ожидаемое число взвешиваний, требуемых для нахождения всех фальшивых монет среди N монет при использовании оптимальной политики и заданных /?0, рь р^ Я и (Ръ> Рь к) — вероятность того, что две группы по k монет уравновесятся; РвФ)— вероятность того, что среди взвешиваемых групп нет фальшивых монет, при условии, что группы уравнове- уравновесились; Рв(У)— вероятность того, что в каждой из групп по k монет имеется по одной фальшивой, при условии, что группы уравновесились; Ри{\) — вероятность того, что в одной из первоначаль- первоначальных групп из k монет имеется одна фальшивая, а в другой нет фальшивых, если известно, что группы не уравновеси- уравновесились; РиФ) — вероятность того, что в одной группе две фаль- фальшивые монеты, а в другой — ни одной, при условии^ что группы не уравновесились; р (г; s\ t) — вероятность того, что в первой группе из k монет имеется г фальшивых, во второй группе из k монет
18] ОСНОВНОЙ ФУНКЦИОНАЛЬНОЕ УРАВНЕНИЕ 223 имеется 5 фальшивых, а среди остальных N — 2k монет, не подвергавшихся взвешиванию, t фальшивых; /лг(О, Pi9 p.2) = giv(O, pi, /?2) = /n(Po> P\y O) = htf(po, ph O) = hN(pQ, pi) = hN(po)> /Л'@, 1, 0) = dA'@, 1, O) = tfiV. 17. ЗНАЧЕНИЯ ФУНКЦИИ р (г; s; t) Для получения основного рекуррентного соотношения по- полезно составить таблицы значений функции р(г; s; t) 2k- \\ i; 0) = 2k(N — 2k) p@; 1; !) = ¦ N(N—\) ' ' 2> °)= ^ — W-2k)(N-2k-\) _ /;@; 0; рФ\ i; ^@; 0; 0)=/70. 18. ОСНОВНОЕ ФУНКЦИОНАЛЬНОЕ УРАВНЕНИЕ Применяя обычным образом принцип оптимальности, полу- получаем основное уравнение для нахождения политики fN (Po> Pv Pi) = min {1 4- qN (p0, рг; k) [hk (p^) -f , D.27) D.26) -п (P?\ P?\ /f») + Pb A) dk
224 МЕТОДЫ ОПТЙМ\.ПЫЮГО ПОИСКА [ГЛ. IV где рФ — условные верояшосги при различных возможных результатах взвешивания двух групп по k монет и рИ)=1 »Ри всех у. D.28) Верхний индекс A) соответствует уравновешиванию двух групп по k монет. Верхний индекс B) соответствует случаю, когда известно, что фальшивые монеты находятся среди N—2k монет. Индекс C) относится к случаю, когда началь- начальные группы по k монет не уравновешиваются и D) — к предпоследнему из случаев, описанных в § 16. Величины p[f) задаются выражениями (N~2k)(N — 2k — \(N—2k)(N — 2k- {T s\ I (N—2k)(N—2k—\) (N—2k)(N-2k—\) Dk(N-2k)+2k(k \ N(N-l) ъ 2k /I 2k /\Р „C) — р^) = 0. Также Ях(РьР\\к) = 4k (N — 2k) n\n-\)\> N(N-\) D.29) ¦\ (-
191 ВЫЧИСЛИТЕЛЬНЫЕ ПРОЦЕДУРЫ 225 Ak(N—2k) yv(A/-l) D.31) Уравнения для djv, hN(p0) и gx(Pi) являются частными случаями уравнения D.27), именно N—2k J . 2k 1 H = min [ 1 — Po; *) Алг-2 D.32) = min {\+qN @, Pl; k) [hk л @) ftv-2 D.33) 19. ВЫЧИСЛИТЕЛЬНЫЕ ПРОЦЕДУРЫ С помощью уравнений D.27), D.32) и D.33) были полу- получены приближенные значения для fN и минимизирующие значения k для N= 1, 2,..., 99 и значений /?;, взятых с точ- точностью до 0,1. Вычисления проводились итеративным мето- методом на машине Унивак 1105. Ограниченность объема памяти вычислительных машин, размерность задачи и ограничен- ограниченность машинного времени сделали несовершенным метод вы- вычисления, так что полученные результаты дают только при- приближенное представление о природе точного решения. Однако некоторые выводы все же можно сделать. Тот же метод позволит нам получить более точные решения при более точных значениях pv когда появятся машины с большим объ- объемом памяти. Несовершенство результатов имеет ту причину, что сами рФ принимают континуум значений в интервале @, 1) при различных значениях /?0, рь рь k и N. Иначе говоря, //Д вы- вычисленные с помощью уравнения A8.3), не равны точно 0,0; 0,1; 0,2; ...; 0,9 или 1,0, а принимают промежуточные 8 Р. Беллман, С, Дрейфус
226 методы оптимального поиска [гл. iv значения, для которых приближенные функциональные выраже- выражения fr(piJ\ P{J\ p[j)) следует искать интерполяцией из первона- первоначально полученных выражений для функций fr(p'0> р[> р'2)> где Ро> Pv Pa принимают значения 0,0; 0,1; ...; 0,9; 1,0. Эти одиннадцать величин мы далее будем именовать мно- множеством Р и обозначать через рУ) и p(J] последовательные элементы этого множества, между которыми лежит p{J\ В том случае, когда р[Я -\-р[Л 5> 1, интерполяционная формула для fr (p[J\ p\h) (здесь /?</) опущено, так как р\р -\- \\ЛLU) = 1) имеет вид + 0,01 (рв -Яо)Л (Р* Рх) + (Яо ~ Рп)/г (Л, Р\) (Pi - Pi)- D.34) Когда ру) -\- p\J) = 1,1, интерполяционную формулу сле- следует изменить, оставив только fr(p0,pi), friP^P\) и fr(Po>Pi)- Очевидно, что приращение 0,1 велико, что порождает неточ- неточность вычислений. Однако тот факт, что для получения /дг все величины fr(pOipl)f r<^N должны храниться в памяти, делает невозможными вычисления с меньшим интервалом. Интуитивные соображения подсказывают также, что функции/ и соответствующие им минимизирующие значения (будем обо- обозначать их через kN) должны быть разрывны на границах р[Я= 1 и р[})-\- р[])= 1, что снова является препятствием к ис- использованию интерполяционных формул. Так как количество вычисленных значений /n(Pq, P\) превышает 6000, то печатающее устройство не может выдать полностью как эти значения, так и соответствующие значе- значения kN. В качестве примера полученных данных мы поме- помещаем таблицы 4.1—4.4, вычисленные для N=80 и 90. Из этих результатов очевидно следующее: (a)/*@,0, l) = log*M (b) fN @, 0, 1) = гаах/лг (р0, pY ,, fNiP»P»Pt) (с) j дг стремится к некоторому пределу 4'3 } при N—» оо и фиксированных /?0, рь р%. Справедливость последнего вывода подтверждается стати- статистическим анализом, проведенным для N== 79-?-99. Мы выбрали именно эти значения N для того, чтобы иметь воз- возможность говорить об асимптотике функции и одновременно
19] ВЫЧИСЛИТЕЛЬНЫЕ ПРОЦЕДУРЫ 227 иметь достаточно данных для определения тенденции. Для этих значений N и всех {pt) из Р были вычислены стати- статистки ч bN(Po,Pi) rN(Po,Pi) = „ Pi) Таблица 4.1 Значения k^ для #=80 V Ро \ 0 0,1 0,2 0,3 0,4 0,5 0,6 0,7 0,8 0,9 1,0 0 7 3 4 5 7 8 7 7 32 28 од 7 7 10 8 7 8 38 38 37 37 0.2 7 8 10 9 40 40 40 39 39 0.3 8 8 12 10 40 40 40 40 0,4 8 10 14 40 40 21 40 0.5 8 10 40 40 40 40 0,6 18 40 40 40 40 0,7 18 40 40 40 0.8 40 40 29 0.9 40 27 1.0 27 Таблица 4.2 Значения fN для #=80 X\pi Ро \ 0 0,1 0,2 0,3 0.4 0,5 0,6 0.7 0.8 0.9 1.0 0 6.447 4,674 4,534 4.344 4,056 3.781 3,452 3,160 2,706 1,715 0,1 6.512 5,773 5,293 4,920 4,689 4,340 4,058 3.488 2,481 1.315 0.2 6,539 6,146 5,736 5,422 5,114 4.524 3,917 3,021 1,675 0.3 6,535 6.309 5,988 5,486 4,890 4,272 3,445 2,050 0,4 6.497 6,298 5,837 5,243 4,619 3.835 2.400 0.5 6,416 6.164 5.588 4.911 4,154 2,750 0,6 6,283 5,928 5,204 4,408 3.100 0.7 6,072 5,496 4.663 3,450 0.8 5,748 4.913 3,720 0.9 5,143 3.927 1.0 4,000
228 МЕТОДЫ ОПТИМАЛЬНОГО ПОИСКА [гл. IV Таблица 4.3 Ро \ 0 0,1 0,2 0,3 0,4 0,5 0,6 0,7 0,8 0,9 1,0 0 7 5 5 6 6 9 8 8 36 32 0,1 8 8 10 9 8 9 10 37 42 41 Значения kN 0,2 8 10 10 9 9 45 44 44 44 0,3 9 10 10 45 45 45 45 44 0,4 10 10 14 45 45 45 45 для #=9С 0,5 10 10 15 45 45 45 0,6 10 22 45 45 45 0,7 22 45 45 45 0.8 45 45 32 0,9 45 31 1,0 27 Таблица 4.4 \pl Ро \ 0 0,1 0,2 0,3 0,4 0,5 0,6 0,7 0,8 0,9 1,0 0 6,591 4,770 4,664 4,450 4,153 3,867 3,523 3,217 2,747 1,748 *¦""¦ 0,1 6,657 5,895 5,409 5,034 4,767 4,422 4,134 3,541 2.527 1,320 Значения fN 0,2 6,690 6,269 5,819 5,508 5,208 4,607 3,988 3,061 1,702 0,3 6,687 6,437 6,085 5,654 5,004 4,371 3.513 2.053 0,4 6,634 6,436 5,943 5,396 4,733 3,913 2.440 для 0.5 6,553 6.321 5,694 5,033 4,238 2,800 /V = 90 0,6 6,432 6,103 5,343 4,501 3.160 0,7 6.236 5,656 4,765 3,520 0,8 5,909 5,030 3,849 0,9 5,272 4,068 1,0 4,156 При фиксированных рг функции s^(pQy р{) почти постоянны относительно N (см. таблицу 4.5). Была вычислена квадра- квадратичная регрессия на р0 и рх по средним rN и sN (усредне- (усреднение по N), т. е. по статистикам 99 D.36) N=19 99
191 ВЫЧИСЛИТЕЛЬНЫЕ ПРОЦЕДУРЫ 229 Эти регрессии равны (a) г = — 1,076 +6,014р0 — 0,594/7? + + 8,350^ — 3,431^, ог = 0,956; (b) 5=1,017 —О,869Л + О,О13/|8 + + 0,388/?! — 0,764/7?, а. = 0,070. D.37) Тот факт, что дисперсия в D.37, Ь) мала и свободный член близок к единице, позволяет нам заключить, что мы имеем очень точное выражение для регрессии. Таблица 4.5 TV 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 *дг(О, 0) 1,470 1,471 1,469 1,470 1,468 1,468 1,466 1,467 1,464 1,465 1,462 1,465 1,463 1,464 1,462 1,463 1,461 1,462 1,460 1,461 1,460 5дг@,2; 0,5) 1,305 1,275 1,290 1,282 1,292 1,262 1,291 1,268 1,277 1,271 1,281 1,265 1,289 ,274 1,283 1,275 1,283 1,268 1,281 1,270 1,278 5дг@,6; 0,3) 0,784 0,786 0,779 0,788 0,781 0,785 0,778 0,786 0,778 0,779 0,772 0,781 0,774 0,777 0,770 0,779 0,773 0,773 0,767 0,776 0,770 sN(o,8; o,i) 0,570 0,566 0,571 0,565 0,570 0,564 0,568 0,562 0,566 0,562 0,566 0,561 0,563 0,561 0,557 0,559 0,555 0,558 0,556 0,557 0,553 Однако равенство D.37, а) не столь удовлетворительно, ибо ог велико. Причина этого в том, что значения kN не- неустойчивы относительно TV при фиксированных р0, рх. Ве- Вероятно, это частично объясняется тем, что, во-первых, может существовать несколько значений TV, дающих очень близкие значения /, и несовершенство метода вычислений не позволяет
230 МЕТОДЫ ОПТИМАЛЬНОГО ПОИСКА [ГЛ. IV выделить наилучшее из них; во-вгорых, может оказаться, что интерполяции, как уже было сказано, не дают удовле- удовлетворительного результата на границах рМ)=\у р^=\ и pti)-\-p{ti = \. Первая из этих неприятностей преодолевается основными данными, при которых, для многих значений /?0, pv два весьма далеких друг от друга значения k постоянно повторяются и одно из них, вероятно, является корректным. Примеры таких основных данных см. в таблице 4.6. N 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 /¦дг@.3; 0,3) 0,1392 0,1250 0,4938 0,1341 0,1325 0,5000 0,4941 0,1279 0,1264 0,5000 0,4944 0,5000 0,1538 0,5000 0,4946 0,5000 0,1368 0,5000 0,4948 0,1327 0,1313 ,„@.6; 0,1 0,4810 0,4750 0,1111 0,4756 0,1084 0,4762 0,1059 0,4767 0,4828 0,4773 0,1124 0,1111 0,1099 0,4783 0,1075 0,4787 0,4737 0,4792 0,4742 0,1122 0,1111 Т ) а б л и ц а 4.6 /¦„@,8; 0,1) 0,3544 0,4625 0,4691 0,4634 0,3614 0,4643 0,47С6 0,4651 0,3678 0,4659 0,3596 0,4667 0,3956 0,4674 0,4624 0,4894 0,4632 0,3750 0,4639 0,4694 0,4646 20. РАССМОТРЕНИЕ С ПОМОЩЬЮ ТЕОРИИ ИНФОРМАЦИИ С помощью теории информации можно получить нижнюю границу fN для вполне оптимальной политики. При одном взвешивании мы имеем три возможных исхода: равновесие и два исхода в случае неуравновешивания. Поэтому при таком взвешивании ожидаемая величина получаемой нами информа- информации равна не более чем 1 единице = log23.
20] РАССМОТРЕНИЕ С ПОМОЩЬЮ ТЕОРИИ ИНФОРМАЦИИ 231 Если фальшивых монет нет, ю знание этого факта экви- эквивалентно— logo/?o единицам информации. Если имеется одна фальшивая монета, то ею может быть любая из N монет с вероятностью ^г; отсюда суммарная информация, соответст- соответствующая определению каждой из этих возможностей, равна — log.2 (pJN), так что ожидаемое количество информации, соответствующей всем N возможностям, равно ) = ~^Ioga§" единиц' Аналогично информация, соответствующая случаю двух фальшивых монет, будет равна ~Р^°& N(N-\)!2- Следовательно, нижней границей для /# служит отношение ожидаемого количества информации к единице информации log, 3: 2 F = - 2Pi lo&Pi +Pi log,AT+ft log, N{N~l) . D.38) « = 0 Сравнение этого выражения с нашими результатами под- подтверждает утверждения (Ь) и (с) в § 19, но еще раз подчер- подчеркивает, что несовершенство интерполяционной процедуры дает несколько заниженную оценку для значений Дг, по крайней мере для р^-\гР\ ^0,6. Например, в таблице 4.4 подчеркнутые значения /дг ниже границы F, вычисленной по формуле D.38). Тем не менее мы можем найти некоторое утешение в том, что полученные значения fN означают, что мы имеем хоро- хорошую субоптимальную политику, так как эти значения имеют тот же порядок, что и F. Из D.38) можно также заключить, что !5?^-*(p1 + 2ft)log32> D.39) что согласуется с утверждением (с) предыдущего параграфа. Когда /?.2=1, то выражение обращается в 2 1og32=l,26 и, следовательно, утверждение, эквивалентное (а), должно для оптимальной политики принять вид 0, 0, 1)-M,261oga№ D.40)
232 методы оптимального поиска [гл. IV Наконец, можно показать, что минимум F при Ръ-\~Р\-\- =l достигается, когда f _Pi _ Pa /о~" N~ N(N—\)/2 ' откуда асимптотически л=1, что подтверждает утвержде- утверждение (Ь). КОММЕНТАРИИ И БИБЛИОГРАФИЯ Задача нахождения оптимальной процедуры поиска положения абсолютного максимума функции N переменных весьма трудна. Укажем, например, следующие статьи: A. G 1 е a s о п, A search problem on the я-cube, Proc. Symposia in Appl. Math., vol. 10, 1960, pp. 175-178. P. Wolfe, The RAND Symposium on Mathematical Programming, Linear Programming and Recent Extensions, The RAND Corpo- Corporation, Report R-351, 1959. Далее, когда априори известно, что функция унимодальна, за- задача решена только для функций одной переменной. Простейшие соображения по этому поводу см. в § 22 гл. 1 книги «Динамиче- «Динамическое программирование», где мы следовали неопубликованной ста- статье Джонсона. Более серьезное рассмотрение можно найти в статье: J. К i e f e r, Sequential minimax search for a maximum, Proc. Amer. Math. Soc, vol. 4, 1953, pp. 502—506, и дальнейшие результаты в статье: J. К i e f e r, Optimum sequential search and approximation methods under minimum regularity assumptions, J. Soc. Indust. Appl. Math., vol. 5, 1957, pp. 105—136. Результаты относительно положения корня монотонной функ- функции содержатся в работе: О. Gross and S. Johnson, Sequential minimax search for a zero of a convex function, Math. Tables and Other Aids to Com- Computation, vol. 13, 1959, pp. 44—51. Укажем еще статьи: M. S a n d e 1 i u s, On an optimal search procedure, Amer. Math. Monthly, vol. 68, 1961, pp. 133—134. H. Robbins, Some aspects of the sequential design of experi- experiments, Bull. Amer. Math. Soc, vol. 58, 1952, pp. 527—536. A. D v о r e t z k y, On stochastic approximation, Proc. Third Ber- Berkeley Symposium on Mathematical Statistics and Probability, University of California Press, Berkeley, California, vol. 1, 1956, pp. 39—56. G. E. P. Box, Evolutionary operations, a method for increasing industrial productivity, Appl. Stat., vol. 6, 1957, pp. 3—23.
ДОПОЛНИТЕЛЬНАЯ ЛИТЕРАТУРА 233 D. J. Newman, Locating the maximum point on a unimodal surface, Notices of the Amer. Math. Soc, vol. 6, 1959, p. 799. J. К i e f e r and J. W о 1 f о w i t z, Stochastic estimation of the ma- maximum of a regression, Ann. Math. Stat., vol. 23, pp. 462—466. R. C. N о г г i s, A Method for Locating the Maximum of a Func- Function of a Single Variable in the Presence of Noise, Lincoln Laboratory, 22G-0035, 1960. E. J. M a g e e, An Empirical Investigation of Procedures for Loca- Locating the Maximum Peak of a Multiple-peak Regression Function, Lincoln Laboratory, 22G-0046, 1960. Важным приложением общей теории процессов поиска является задача медицинской диагностики и лечения. Недавно появились следующие работы, касающиеся этого вопроса: R. S. L с d 1 е у and L. В. Lusted, Reasoning foundation of me- medical diagnosis, Science, vol. 130, 1959, pp. 9—21. N. Mantel, Principles of Chemotherapeutic screening, Proc. Fourth Berkeley Symposium, University of California Press, Berkeley, California, 1962. В. В. Winter, Optimal diagnostic procedures, IRE Trans, on Re- Reliability and Quality Control, vol. RQC-9, 1960, pp. 13—19. § 5. Детальное и занимательное обсуждение этих вопросов можно найти в книге: Н. W е у 1, Symmetry, Princeton University Press, Princeton, New Jersey, 1952. §§ 14—20. Материал этих параграфов заимствован из статьи: R. Bellman and В. G 1 u s s, On various versions of the defective coin problem, Information and Control, vol. 4, 1961, pp. 118—131. ДОПОЛНИТЕЛЬНАЯ ЛИТЕРАТУРА Существует обширная литература, посвященная приложению теории оптимального поиска к задачам автоматического управле- управления. Основные положения можно найти в книгах: А. А. Фельдбаум, Вычислительные устройства в автомати- автоматических системах, Физматгиз, 1960. А. А. Первозванский, Случайные процессы в нелиней- нелинейных автоматических системах, Физматгиз, 1962. S. S. L. Chang, Synthesis of Optimum control systems, Me Graw-Hill, New York, 1961. Там же имеется более подробная библиография. О числах Фибоначчи см. Н. Н. Воробьев, Числа Фибоначчи, изд. 2, изд-во «Наука», 1.964.
ГЛАВА V ДИНАМИЧЕСКОЕ ПРОГРАММИРОВАНИЕ И ВАРИАЦИОННОЕ ИСЧИСЛЕНИЕ 1. ВВЕДЕНИЕ В следующих главах мы увидим, что целый ряд важных задач, возникающих при исследовании траекторий, многоша- многошаговых процессов производства и, наконец, в области упра- управления с обратной связью можно сформулировать в терминах вариационного исчисления. Хотя аппарат этой теории играет важную роль при аналитическом рассмотрении многих клас- классов вариационных задач, он до сих пор мало использовался при численном решении проблем современной науки и техники. Чтобы объяснить это явление, мы изложим здесь основы вариационного исчисления, а затем подробно обсудим труд- трудности, которые встречаются на пути численного решения вариационными методами. К задачам 1акого рода мы дадим подход с помощью динамического программирования и пока- покажем, каким образом можно обойти или преодолеть некоторые из этих трудностей. Затем мы коротко покажем, как подход с помощью функ- функциональных уравнений, основанный на принципе оптималь- оптимальности, приводит к основным классическим результатам вариа- вариационного исчисления, а также теории Гамильтона—Якоби. Читатель, интересующийся только численным решением процессов нахождения траекторий и процессов управления с обратной связью, может пропустить эту главу при первом чтении. Во всех следующих главах, посвященных соответ- соответственно траекторным процессам, многошаговым процессам
2] функционалы 235 производства (частный класс процессов управления с обрат- обратной связью экономического происхождения) и задачам упра- управления с обратной связью технического происхождения, мы не будем опираться на результаты этой главы. В главе XII, посвященной рассмотрению вычислительных сторон, будет дано решение задачи о брахистохроне методами динамического программирования. В приложении мы рассмотрим новый подход, принадле- принадлежащий Брайсону, который является, по-видимому, чрезвычайно многообещающим, поскольку он преодолевает преграду раз- размерности, о которой говорилось ранее. 2. ФУНКЦИОНАЛЫ В обычном анализе имеют дело с задачей максимизации или минимизации функции N переменных F = F(xh x2, ..., хА). E.1) В вариационном исчислении рассматриваются задачи, со- содержащие функции от бесконечного числа переменных или, что то же самое, функции от функций. Для обозначения ска- скалярной величины, зависящей от функции, обычно пользуются термином функционал. Подобно тому как функция есть пра- правило сопоставления числа конечному множеству чисел, функ- функционал есть правило сопоставления числа функции или мно- множеству функций. Простейшим и наиболее важным примером функционала является интеграл Римана ъ E.2) определенный для всех функций у (х), непрерывных на [я, Ь\. В дальнейшем мы ограничимся рассмотрением функцио- функционалов вида ь I(У) = \g(y (X), У' (х), х) dx, E.3) а где, как обычно, у' (х) означает производную функции у (х). Функция у (х) будет подчинена граничным условиям вида у (а) = cl9 h (у F), уг (Ь)) = с,. E.4) Смысл такого рода соотношений будет пояснен ниже.
236 ПЛРЙЛЦИОННОЕ ИСЧИСЛЕНИЕ [гЛ. V Более общей является задача максимизации или миними- минимизации функционала вида ь 1(У)= \g(y (х), z (х), х) dx> E.5) а где х, у и z связаны дифференциальным уравнением g = //(*, у, х), г@) = сх. E.6) Еще более общей является задача максимизации или мини- минимизации выражения ь '00= $ g(*(x), У(х), x)dx + h(z(b), у(Ь), Ь), E.7) а где х, у подчинены E.6) и, возможно, дополнительным огра- ограничениям. Эта задача называется задачей Больца, а задача отыска- отыскания экстремума функции в концевой точке b )9 b) E.8) называется в вариационном исчислении задачей Майера. Мы будем называть эту последнюю задачу процессом регулиро- регулирования по конечному состоянию. Обе задачи являются частными случаями задачи оптими- оптимизации интеграла Римана—Стилтьеса ъ Hy)=\g{z (х), у (х), х) dG (х), E.9) а которую мы не будем рассматривать. В большинстве важных приложений функционал I (у) имеет вид E.7), где g или h тождественно равны нулю. 3. ФОРМАЛЬНЫЙ АППАРАТ ВАРИАЦИОННОГО ИСЧИСЛЕНИЯ Перейдем теперь к описанию основного метода вариацион- вариационного исчисления и приведем некоторые классические резуль- результаты. Мы сделаем это для того, чтобы сравнить два различ- различных аппарата — аппарат вариационного исчисления и аппарат
3] АППАРАТ ВАРИАЦИОННОГО ИСЧИСЛЕНИЯ 237 динамического программирования. В дальнейшем мы укажем преимущества и неудобства каждого из них. Наиболее вероятно, что в конечном счете синтез этих двух методов покажет свою способность справляться с действительно сложными за- задачами оптимального управления и оптимальных траекторий. То, что два метода на самом деле дополняют друг друга, будет следовать из приведенной ниже геометрической интер- интерпретации. В вариационном исчислении стараются получить уравне- уравнение для оптимизирующей функции. Действуя чисто формально, опуская многие сложные вопросы существования и единствен- единственности решения, которые возникают в самом начале, иссле- исследуем задачу нахождения функции у (лг), минимизирующей функционал ь /(*)> x)dx. E.10) Будем применять непосредственное обобщение вариацион- вариационного подхода, используемого для функций от конечного числа переменных. В действительности основное уравнение вариа- вариационного исчисления было получено Эйлером путем перехода к пределу от конечного к бесконечному. Как следует ожи- ожидать по аналогии с обычным анализом, условия, которые мы получим, будут необходимыми, но, вообще говоря, недоста- недостаточными. Пусть у (х) означает минимизирующую функцию. Мы можем считать, что она дает относительный минимум. Если z(x) — любая «близкая» к ней функция, то должно быть I(z)^I(y). E.11) Чтобы выразить тот факт, что z(x) — близкая функция, запи- запишем ее в виде z(x)=y(x) + zg(x), E.12) где g(x) — пока не определенная функция, а е—малый пара- параметр. Функция z (х) не является наиболее общей формой близ- близкой функции, но для нас это неважно, поскольку, как отмечено выше, речь идет о необходимых условиях. Важно понимать, что для получения необходимых условий, мы можем выбрать любой удобный класс близких функций.
238 ВАРИАЦИОННОЕ ИСЧИСЛЕНИЕ \ГЛ. V Тогда неравенство E.11) принимает вид для всех е и g(x), или в явном виде ъ ь \?(У + ЧГ, У + е^, *)^^ ^(.у, у\ X)dx. E.14) а а Чтобы получить отсюда более полезный результат, разложим в ряд левую часть как функцию от параметра е. В этом раз- разложении достаточно сохранить только постоянный и линей- линейный члены, поскольку е предполагается малым параметром. Тогда получим соотношение ь /(У) = « | \ {Fyg+ Fyg) dx] + 0 (г2) =г /(у). E.15) а Для того чтобы это неравенство выполнялось как для поло- положительных, так и для отрицательных значений малого пара- параметра е, мы должны иметь: ь =0. E.16) Поскольку g(x) — произвольная функция, это соотношение должно выполняться для всех g(x)y имеющих производные на [а, Ь]. Полезно заметить, что уравнение E.16) можно было бы получить также из условия, что dl/de должно быть равно нулю при е = 0. Для того чтобы извлечь отсюда как можно больше, про- проинтегрируем второе слагаемое в подынтегральном выражении по частям; мы получим: ъ J \g(x) Fv- g(x) ? (Fy)\ + \g(x) Fyt = 0- E.17) a Так как сейчас мы имеем дело с необходимыми условиями внутри интересующего нас интервала, положим на момент g(a) = g(b) = 0. E.18) Это равносильно утне^ждению, что мы фиксируем концы опти- оптимизирующей кривой. В результате получим, что для всех
3] АППАРАТ ВАРИАЦИОННОГО ИСЧИСЛЕНИЯ 239 допустимых g(x) имеет место ъ I g (х) \py~Tx с3»]dx=°- E-] 9> а Если бы E.19) было справедливо для всех g(x), то, очевидно, служащая коэффициентом функция была бы равной нулю, т. е. рр ° <520> Чтобы установить это, нам достаточно положить g(x) = = FV — dFy/dx. Тогда подынтегральная функция в E.19) будет полным квадратом, откуда следует E.20). Однако, как указывалось выше, мы в действительности рассматриваем не все возможные g(x), а только те, которые имеют производ- производные, более того, только те функции, производные которых ведут себя достаточно хорошо, настолько, что имеют смысл выписанные интегралы. Поскольку нам заранее не известен вид решения, нет никакой гарантии, что функция Fy—dFY>dx— допустимая. Тем не менее в одном из основных результатов вариа- вариационного исчисления («основная лемма вариационного исчис- исчисления») установлено, что если E.19) выполняется для всех допустимых g(x), то имеет место уравнение E.20). Строгие формулировки этих вариационных задач и по- подробные доказательства перечисленных результатов можно найги в стандартных руководствах, перечисленных в конце главы. Мы не будем здесь углубляться далее в предмет, по- поскольку, как мы увидим ниже, имеются разные пути обхода ряда вопросов строгого обоснования. Уравнение E.20) в раскрытом виде представляет собой уравнение второго порядка, оказывающееся, за исключением легко определяемых случаев, нелинейным. Оно называется уравнением Эйлера вариационной задачи и является необхо- необходимым условием, полностью аналогичным условию, которое получается в конечномерном случае, когда приравнивают нулю первые производные. Лишь в редких случаях удается получить точное анали- аналитическое решение этого уравнения в элементарных функциях анализа. Классические примеры можно найти в ссылках, дан- данных в конце главу.
240 ВАРИАЦИОННОЕ ИСЧИСЛЕНИЕ [ГЛ. V 4. НЕОБХОДИМЫЕ УСЛОВИЯ Как и в анализе, для минимизирующей и максимизирую- максимизирующей функций, а также для функций, дающих точки стацио- стационарности более сложной природы, получается одно и то же уравнение. Правила для различения этих случаев до некото- некоторой степени известны, но общая картина весьма туманна. Двумя наиболее важными условиями минимума являются: Условие Вейерштрасса. Пусть z (х) — функция, отличная от экстремальной функции у (х), a z (x) — ее производная. Тогда должно выполняться неравенство F(х, у, г) — F(х, у, /) — (/ —у) F? (х, у, /) 3* 0. E.21) Левая часть этого неравенства называется Е-функцией Вейер- Вейерштрасса. Условие Лежандра. Для того чтобы j; (лг) была миними- минимизирующей функцией, должно выполняться неравенство Fyy(xt у, /M*0, E.22) что в анализе соответствует обычному условию на вторую производную. Эти условия, не являющиеся интуитивными с точки зрения классического вариационного подхода к проблемам оптими- оптимизации, как будет показано ниже, логически и просто выте- вытекают из подхода с точки ^зрения динамического программи- программирования. 5. ЕСТЕСТВЕННЫЕ ГРАНИЧНЫЕ УСЛОВИЯ Иногда в вариационных задачах на экстремальную функ- функцию налагают условия на концах вида О (у (а), /(я)) = 0, Н(у(Ь),у'(Ь)) = 0. E.23) Чаще ограничение задается на левом конце интервала, а усло- условие на правом конце включается в саму вариационную задачу. Обратившись к уравнению E.19), мы видим, что, если_у должно принимать в точках а и b фиксированные значения, то ра- разумно требовать, чтобы g(x) в этих точках обращалась в нуль. С другой стороны, если у определена только в точке Ъ или вообще не определена, то вариация функции g(x) в точке
7] НЕДОСТАТКИ ВАРИАЦИОННОГО ИСЧИСЛЕНИЯ 241 х = а приводит к соотношению /у = 0 при х = а. E.24) Это последнее условие называется естественным граничным условием. 6. ИЗОПЕРИМЕТРИЧЕСКИЕ ЗАДАЧИ Часто мы сталкиваемся с задачей максимизации или мини- минимизации функционала I (у) при интегральном ограничении вида ъ /, x)dx = ch E.25) что в приложениях обычно означает ограниченность некото- некоторого ресурса. При разных условиях можно показать, что, как и в обычном анализе, мы можем применить множители Лагранжа и рассматривать новую задачу отыскания экстре- экстремума функционала ь \ [F О. У. х) - М О> У, •*)] dx. E.26) а Таким образом мы получаем видоизмененное уравнение Эйлера (F - XG)V - ^ (/у ~ Юу) = 0, E.27) где X — постоянная, которая подлежит определению с по- помощью соотношения E.25). Как будет показано ниже, этот результат следует также из метода функциональных уравнений динамического про- программирования. По-видимому, довести решение задачи такого рода до самого конца — дело не простое. 7. НЕДОСТАТКИ ВАРИАЦИОННОГО ИСЧИСЛЕНИЯ Трудности, которые мы перечисляли в связи с примене- применением анализа при рассмотрении конечномерных задач оптими- оптимизации, как и следовало ожидать, имеют место и в этих более трудных вариационных задачах над пространствами функций, и притом в более сложных формах.
242 ВАРИАЦИОННОЕ ИСЧИСЛЕНИЕ [гл. V После первоначальной стадии развития вариационного исчисления, связанной с именами Эйлера, Лагранжа, Вейер- штрасса, Гильберта, Больца, Блисса и других, этот предмет в гораздо большей степени был пригоден для изложения в учебниках, чем для практического использования. Разумеется, трудно было надеяться на получение какого-либо решения более приятного вида, чем решение, даваемое дифферен- дифференциальным уравнением Эйлера. А потому последующие работы были посвящены приданию дальнейшей строгости известному формальному аппарату и привели к получению различных необходимых и достаточных условий для разных типов экстремумов, а также к расширению класса функционалов, к которым можно было бы применить этот аппарат. Некоторое значение придавалось проблеме получения численных результатов, но основной упор делался на теоремы существования и единственности. Однако появление быстродействующих вычислительных машин сильно повлияло на математическое мышление. Имея в распоряжении такое мощное орудие, мы теперь оцениваем аналитический аппарат не только с точки зрения его изя- изящества, но также со стороны его вычислительной осуществи- осуществимости. К сожалению, именно с этой точки зрения он весьма неудовлетворителен. В действительности имеется несколько различного рода трудностей, связанных с классической формулировкой вариа- вариационных вопросов. Некоторые из них вытекают из самой вариационной задачи, а некоторые — из уравнения Эйлера. Рассмотрим сначала вопрос о численном решении уравнения Эйлера. Как указывалось выше, это в большинстве случаев нели- нелинейное уравнение. Кроме того, это нелинейное уравнение с граничными условиями в двух точках. Чтобы понять значение этого последнего утверждения, рассмотрим вкратце, что требуется для численного решения дифференциального уравнения. Поскольку вероятность получения удобного аналитического решения пренебрежимо мала, для численных расчетов мы должны прибегнуть к помощи машин-аналогов, включающих использование методов Монте-Карло, или же к помощи цифровых вычислительных машин. В большинстве случаев следует использовать цифровую вычислительную машину.
71 НЕДОСТАТКИ ВАРИАЦИОННОГО ИСЧИСЛЕНИЯ 243 Так как вычислительная машина производит только обыч- обычные арифметические операции, приходится преобразовать рас- рассматриваемое уравнение к виду, требующему только исполь- использования этих операций и не содержащему каких-либо транс- трансцендентных операций, таких, как дифференцирование или интегрирование. Это значит, что мы должны приближаться к интегралам с помощью сумм, а к производным с помощью разностей. Такое приближение можно сделать бесконечным числом способов, требующих тщательного взвешивания факто- факторов точности, устойчивости и времени. Все это, конечно означает, что в настоящее время численный анализ является, скорее искусством, чем наукой. Избегая всех тонких деталей, неизбежно входящих в любой конкретный вычислительный процесс, изложим общую идею решения дифференциального уравнения с помощью счетной машины. В заданном уравнении У=/(х,У), У(х*) = со E.28) (задаче с заданным начальным значением) заменяем произ- производную приближенным выражением вида или 2A E.29) При использовании первого представления (в некотором смысле худшего из возможных) дифференциальное уравнение E.28) заменится следующим разностным уравнением: У(* + *)-У(*)=ПХг у)> у(Ха)==с> E.зо) где х предполагается теперь принимающим только значения х& -^о + Д> хо + 2Д, xQ ~\- ЗА и так далее. Задавая начальное значение у{х^), мы вычисляем по формуле E.30) значение у (х0 -f- Д). Далее с помощью най- найденного значения _у(.го-)-Д) по этой формуле определяется значение у при х = х^-\-2^ и т. д. Такого типа итера- итеративный алгоритм идеально подходит для цифровой машины, так как здесь требуется только последовательное повторение одной и той же операции. Следовательно, для выполнения всего процесса достаточно одного набора команд.
244 ВАРИАЦИОННОЕ ИСЧИСЛЕНИИ [гл. V Выбор А зависит от требуемой точности и от времени, отведенного на вычисления. В общем, чем меньше А, тем более точным будет полученное таким путем решение. С другой стороны, время, необходимое для определения значения у в некоторой точке х = хъ очевидно, пропор- пропорционально 1/А. Кроме того, имеют место еще требования устойчивости. По этой причине приближение E.30) является более предпочтительным, чем E.29). Мы не будем вникать глубже в эти важные вопросы, поскольку в связи с решением вариационных задач в этом направлении мало сделано. Читатель, которого интересуют результаты, известные для дифференциальных уравнений, может обратиться к списку литературы в конце главы. Аналогичный метод применяется для решения системы дифференциальных уравнений вида ¦^ =/,(*, уи уь ...,yN), yi@) = ci, i=\,2,...,N. E.31) Если использовать векторные обозначения *L=f(x,y), y@) = c, E.32) то формально процедура в точности совпадает с приведен- приведенной выше. Так как цифровые машины идеально подходят для решения дифференциальных уравнений с начальными условиями, то вполне можно мыслить себе решение систем вида E.31) с сотнями или даже тысячами уравнений. 8. ДВУХТОЧЕЧНЫЕ КРАЕВЫЕ ЗАДАЧИ В случае, когда заданы условия на двух концах, ситуация существенно меняется. Рассмотрим уравнение второго по- порядка вида /' = g (х> У* /)> *о < х < хь E.33) где решение подчинено граничным условиям у (х0) = сь у (xt) = с* Используя конечноразностные приближения и полагая
91 ограничения 245 мы видим, что, хотя y(xQ) задано, у нас нет явного способа определения у (х0 -f- А), поскольку не определено значение / Обычный выход из этого тупика заключается в приблизи- приблизительной оценке значения /(х0), а затем в использовании для получения значения у (х{) методов, описанных в § 7. Затем первоначальная оценка для у (xQ) последовательно изменяется, пока не будет приемлемого согласия между пред- предписанным значением в х{ и значением, полученным при интегрировании. В случае нелинейного уравнения Эйлера метод коррек- корректировки первоначально выбранного значения /(х0) совер- совершенно произволен, и для него не имеется каких-либо опре- определенных правил. Во многих случаях неустойчивость как аналитического, так и вычислительного происхождения вызы* вает большие колебания в значении у{Х\) при малых изме- изменениях У(х0). Не существует никакого практического способа предска- предсказания численной неустойчивости для систем нелинейных диф- дифференциальных уравнений, но опыт вариационного подхода к проблемам траекторий убедительно показывает, что не- неустойчивость представляет весьма реальную и часто непре- непреодолимую проблему. В силу этого желательно иметь способ получения чис- численного решения исходной вариационной задачи, который не зависел бы от решения двухточечных краевых задач для нелинейных дифференциальных уравнений. 9. ОГРАНИЧЕНИЯ Гораздо более серьезная со многих точек зрения труд- трудность, чем трудность, связанная с чисто вычислительной сто- стороной в случае двухточечных краевых задач, возникает от наличия ограничений на природу оптимизирующей функции. Рассмотрим, например, задачу минимизации функционала \',x)dx E.35) а при ограничении вида 1/1 «г* E.36)
246 ВАРИАЦИОННОЕ ИСЧИСЛЕНИЕ [гл v Поскольку существование уравнения Эйлера основано на предположении, что вблизи от экстремали допускается сво- свободное (двустороннее) варьирование, мы должны примириться с фактом, что здесь вообще может не быть никакого урав- уравнения Эйлера! Решение может состоять из интервалов, на которых у = си чередующихся с интервалами, где у' = —q. Или могут быть интервалы, где у' = сх или У =— сь а также интервалы, где !У|<^1- Это означает, что уравнение Эйлера будет удсвлетворяться внутри тех интервалов, где |У|<СГ1- Решение тогда может иметь вид, изображенный на рис. 61. Рис. бЬ Нетрудно построить примеры, в которых такие колеба- колебания могут встречаться сколь угодно часто. Даже простые варианты траекторных процессов, процессов управления и процессов с «узкими местами» могут иметь решения с тремя или четырьмя чередованиями. В результате такого услож- усложнения задачи этого типа чрезвычайно трудны для решения. Они требуют комбинирования аналитических методов и изо- изобретательности, и в настоящее время не существует никаких единых методов для получения явных решений. Ниже будут даны ссылки на ряд решенных частных задач. Каковы бы ни были трудности при численном решении обычной вариационной задачи, они несравнимы с возникающими здесь трудностями. Требуется не только угадать начальные значения, но во многих случаях также угадать начальные фазы решения и устойчивость этих фаз. Указанную выше задачу, где \y'\^ct1 можно решать с помощью множителей
1 1 ] ФОРМАЛЬНЫЙ АППАРАТ 247 Лагранжа и приближенных значений для начальных условий. Задачу минимизации при ограничении вида lyl^c^ таким образом решить, по-видимому, нельзя. Как мы увидим, метод динамического программирования дает путь обхода этих трудностей; во многих случаях чис- численное решение задач с ограничениями фактически даже облегчается благодаря наличию ограничений *). 10. ЛИНЕЙНОСТЬ Исследование оптимального использования экономических комплексов, данное в главе VII, приводит к аналитической задаче максимизации скалярного произведения (х(Т),а)> E.37) где хну связаны векторно-матричным уравнением ?? = Ax + By, х@) = с, E.38) и ограничением в виде неравенства Cy^Dx. E.39) Линейность этой задачи делает классический вариационный подход невозможным. Для этой задачи максимизации урав- уравнения Эйлера просто не существует. 11. ФОРМАЛЬНЫЙ АППАРАТ ДИНАМИЧЕСКОГО ПРОГРАММИРОВАНИЯ Опишем теперь коротко подход к вариационным задачам с помощью динамического программирования. Как и ранее, действуем чисго формально. Рассмотрим задачу минимизации функционала \y,y)d*> E.40) где функция у подчинена граничному условию у(а) = с. Минимальное значение будет функцией начального значения а, переменной х и граничного значения с функции у. Здесь с *) См» обсуждение в § 17 главы I,
248 ВАРИАЦИОННОЕ ИСЧИСЛЕНИЕ [гл. V измеряет начальное состояние системы, а а определяет про- продолжительность процесса. Введем теперь функцию /(а, с) = mini (у). E.41) V Итак, мы включили предложенную выше частную задачу, где а и с — постоянные, в семейство задач, возникающих, когда параметры а и с меняются в областях —оо<^а<^Ь и — оо<^с<^ сю. Начнем с вывода уравнения для функции /(а, с), а затем покажем, как это уравнение приводит к результатам, уже перечисленным в параграфах, посвященных вариационному исчислению, а также к некоторым дальнейшим результатам. В силу аддитивности интеграла Ь а-\-Ь Ъ \= \ + \ E-42) а а а -\- Д из принципа оптимальности немедленно получаем функцио- функциональное уравнение а 4- Д f(a9 c)= min I [ F (х, у, y)dx -f у [a, a -f Д] L X E.43) , с О))], где минимизация производится по всем функциям у, опре- определенным на промежутке а^х^а-\- А и удовлетворяющим условиям у (а) = с и с (у) =у (а ~\- А). Мы используем это соотношение двояким образом: в ана- аналитических рассуждениях — устремляя А к 0, а при численных расчетах — взяв А малым, но отличным от нуля. Ниже эти подходы будут рассмотрены весьма подробно. Всюду в дальнейшем будет предполагаться, что функция f(a, с) имеет непрерывные первую и вторую производные. 12. ОСНОВНОЕ НЕЛИНЕЙНОЕ УРАВНЕНИЕ В ЧАСТНЫХ ПРОИЗВОДНЫХ Заметим, что выбор у(х) на интервале [a, a-j-A] при ограничении у (а) = с можно трактовать как выбор у (х) на интервале [а, а-j-A]. Если А мало, то выбор у' (х) на [a, a -j- А} эквивалентен выбору У (а) в предположении.
13] УРАВНЕНИИ ЭЙЛЕРА 249 непрерывности уг (х). Таким образом, используя выражения а + л S F (¦*, У> У) dx = F (а, су у' (а)) А + о (А), E.44) и равенство v=y'(a), можно переписать E.43) в следую- следующем виде: f(a, c) = mm[F(a, с, v)b+f(a + \ с -f t»A)] + о (Д). E.45) V Устремляя А к 0, получим в пределе нелинейное уравнение в частных производных df :J т?(„ „ „л I „. df at — TT v<2> Г) ^'т^-ау E.46) Начальное условие состоит в том, что f(b, с) = 0 для всех с; уравнение E.46) остается в силе при а<^Ь. 13. УРАВНЕНИЕ ЭЙЛЕРА Для того чтобы избежать смещения результатов на по- постоянную, примем нижнюю границу а за х, аза у—введен- у—введенную выше величину v. Формальное разложение E.45) в степенной ряд приводит к уравнению' f(x,y) = mm\F (х, у, /) А +/ (*, у) + При А ->*0 получим нелинейное уравнение в частных произ- производных О = min F (х, у, У) + ^~ -)~У -у- E.48) (уравнение E.46)). Это уравнение эквивалентно двум урав- уравнениям: *у+-й=°» E-49)
250 ВАРИАЦИОННОЕ ИСЧИСЛЕНИЕ [гл. V которое получается взятием частной производной по у\ и которое справедливо для х> у и у\ удовлетворяющих E.49). Продифференцировав E.49) по х, получим уравнение d F I д2/ I д2/ , п {ЪЪ]\ —*vr i "л—5 —:г~Т" V = vJ. 10.0 1) dx y ' дхду ' ду* J ' Взяв частную производную от E.50) по у, получим урав- уравнение Два последних уравнения вместе с уравнением E.49) при- приводят к классическому уравнению Эйлера ^Fy — Fy = 0. E.53) Обычный вывод этого результата из E.48) основан на теории характеристик. 14. УСЛОВИЕ ЛЕЖАНДРА Мы использовали тот факт, что в точке минимума должна обращаться в нуль производная функции в E.48). Добавочное требование о том, что в точке минимума должна быть поло- положительной вторая производная по у\ приводит к неравенству />у>0, E.54) представляющему собой классическое условие Лежандра. 15. УСЛОВИЕ ВЕЙЕРШТРАССА Выполнение условия Лежандра не исключает возможности того, что минимум является только относительным. Для су- существования абсолютного минимума для всех функций У = Y' (х, у) должно выполняться неравенство F (x, у, у') + fc+/^F (х, у, Y') + ? + У' g? E.55) или F (х, у, Г) - F (х, у, У) + (У - У) | ^ 0, E.56)
16] СЛУЧАЙ НЕСКОЛЬКИХ ЗАВИСИМЫХ ПЕРЕМЕННЫХ 251 которое, если воспользоваться уравнением E.49), принимает вид F(х, у, V)-F(х9 у, /) -(Г-У)Fy ^0. E.57) Это и есть необходимое условие Вейерштрасса для абсолют- абсолютного минимума. 16. СЛУЧАЙ НЕСКОЛЬКИХ ЗАВИСИМЫХ ПЕРЕМЕННЫХ Приведенный метод легко переносится на случай задачи минимизации функционала ь Уь ..о Уп) = ъ = \ FО/], уь ..., ул\ у[, yl ..., у'п, хх) dxl9 E.58) л: где У\ (х) =Уь У* (х)=уь ..., уп (х) =уп. E.59) Если встречаются производные высшего порядка, то можно сделать замену переменных, сводящую задачу к предыдущей. Например, если мы хотим минимизировать функционал ь l(y) = \F (у, У, у", хО dxx E.60) по всем функциям у, удовлетворяющим условиям У(х)=Уи У(х)=у2, E.61) то мы вводим новые неременные У\ =У {*)> E.62) у2=у'(х). ' Тогда задача превращается в задачу минимизации функционала ь I (Уи УъУ— \ F O/i, у» у'2, х) dx E.63) X при ограничениях У\=Уь У\{х) = сь уъ(х) = с%. E.64) В целях упрощения записи рассмотрим только простой слу- случай, когда в числе ограничений нет дифференциальных урав- уравнений.
252 ВАРИАЦИОННОЕ ИСЧИСЛЕНИЕ [гл. V Следуя рассуждениям § 13, получим уравнение п 0= min [P + ^+2yj§\, E.65) которое в свою очередь приводит к уравнениям рУ, + § = 0> /=1 "• E-66) ъг*- E'67) = 0./=1.....«, E.68) Отсюда, как выше, получим: и, взяв частные производные по у{, 1 У „' , ~т~ L У} + 2^й==0''=1"-л E-69) Таким образом, мы получили систему уравнений Эйлера 17. ИЗОПЕРИМЕТРИЧЕСКАЯ ЗАДАЧА Добавим ограничение 5 О (*i> ^> ^') rfATi = zy E.71) где z — заданная величина. Наша основная функция, значе- значение минимума, является теперь функцией от трех величин jc, у и z. Иными словами, z является дополнительным парамет- параметром состояния. Следовательно, имеем: ь f(xy у, z) = min \ F (*!, у, у) dxx E.72) У х при ограничении E.71).
18] МНОЖИТЕЛЬ ЛАГРАНЖА 253 Аналогом уравнения E.45) будет fix, у, z) = min [F (х, у, У) А — -f(x -Л, у -УД, z-Qix, у, У) Д)]. E.73) Действуя как ранее, получим уравнение в частных производ- производных Fix, у, У') + ?+У'%-0(*> У> У')? 0 = min У Дифференцирование приводит к соотношению Кроме того, имеет место уравнение . E.74) Используя теперь производную E.75) по х, частную произ- производную E.76) по у и уравнение E.75), получим: Взятие частной производной по z от выражения E.76) при- приводит к следующим результатам: -Од?, E.78) ^ = const. E.80) 18. МНОЖИТЕЛЬ ЛАГРАНЖА Таким образом, мы показали, что производная -J- играет роль множителя Лагранжа. Кроме того, установлен хорошо известный факт, что в изопериметрической задаче она посто- постоянна, т. е. не зависит от х. Уравнение E.77) есть уравнение Эйлера для вариационной задачи с множителем Лагранжа X,
254 ВАРИАЦИОННОЕ ИСЧИСЛЕНИЕ [ГЛ. .V где в качестве основного функционала берется b \ [F(xi> У> У) — W(xif у, у')\ dxv E.81) X 19. ЕСТЕСТВЕННЫЕ ГРАНИЧНЫЕ УСЛОВИЯ Предположим, что у (а) не определено. Тогда оптималь- оптимальное начальное значение для у обладает тем свойством, что изменение в минимальном значении интеграла, взятого до ко- конечной точки (Ьу у (?)), вызываемое изменением в начальной точке у (а)у равно 0. В противном случае имелась бы лучшая начальная точка. Значит, !,=<,=°> <5-82> что вместе с E.49) дает: Fy\Xs=a = 0. E.83) Это естественное граничное условие, связанное С неопреде- неопределенностью в граничном значении. 20. УСЛОВИЕ ТРАНСВЕРСАЛЬНОСТИ Предположим теперь, что левый конец искомой кривой^ должен лежать где-нибудь на заданной кривой y = g(x). Чтобы решить эту задачу, рассуждаем следующим образом. Для оптимальной кривой изменение в / при движении на- начальной точки вдоль заданной кривой должно быть равным нулю. Это эквивалентно тому, что в начальной точке мы имеем: Обращаясь к E.50), получим: Р+У'%-ё'%=*> E-85) а из E.49) следует: F + (g'-y')Fy> = 0. E.86) Это условие, связывающее угловые коэффициенты каса- касательной к экстремали и касательной к кривой g(x) в на- начальной точке (jc, у), есть классическое условие трансвер- трансверсальности.
22] НКЯВНЫЕ В\РИАЦЙОННЫЕ ЗАДАЧИ 255 21. УГЛОВЫЕ УСЛОВИЯ ЭРДМАННА Зададим теперь вопрос, при каких условиях оптимальная функция может терпеть разрыв производной у. Из E.49) и непрерывности ~ следует, что функция /> в точке излома непрерывна, а тогда из E.50) видно, что функция F~y'Fy E.87) непрерывна в точке излома. Это есть угловые условия Эрд- маина. 22. НЕЯВНЫЕ ВАРИАЦИОННЫЕ ЗАДАЧИ Рассмотрим очень важный класс вариационных задач, в которых не существует какого-либо простого явного вы- выражения для подлежащего минимизации функционала. В ка- качестве примера рассмотрим следующую задачу. Пусть задана система дифференциальных уравнений dH = gi (Уь У* ..., yN; r, t), у, @) = с„ I = 1, 2 N, E.88) и требуется определить неизвестную функцию z так, чтобы минимизировать время, требуемое для перехода системы в состояние (dh d.2, ..., dN). Здесь функционал Т= T(z) опре- определяется условиями yi(T) = diy i=l, 2, ..,, N. E.89) Иными словами, мы хотим перевести систему из первона- первоначального состояния в желаемое состояние за минимальное время. Очевидно, что многие задачи из области техники и управления производством можно сформулировать таким образом. Чтобы определить структуру решения, введем функ- функцию / (у, t)} равную времени, требуемому для перевода системы из состояния у в момент t в желаемое конеч- E.90) ное состояние. Тогда принцип оптимальности приводит к уравнению f(yf *) = тш[Д+/Су + *Д, * + Д)] + о(Д). E.91) г it)
256 ВАРИАЦИОННОЕ ИСЧИСЛЕНИЕ [гл. v Вместо E.88) использовано обозначение dyjdt = g. Тогда, пере- переходя к пределу при А—* 0, получим чисто формально, как и выше, n E.92) Отсюда следуют два соотношения: 1 = 1 (Ь) 1=1 E.93) E.94) Из E.93) можно теперь извлечь следующие выводы: (a) ft = 0 при t= T по определению f (yt t). N (b) ^fy.(T)gi(T) = —\ в точке Т, что следует из E.93) и условия (а). (c) Если функции g независимы от времени, то n \] fvgi=—1 всюду вдоль оптимального пути (это пер- ?=1 1 вый интеграл решения). (d) Из определения f (у, t) следует, что для функ- функций jy, значения которых в точке Т не определены, В классической литературе функции fy. обозначаются А,- и называются функциональными множителями *). Если множители fy. известны в точке, то написанные выше уравнения показывают, как определить оптимальное решение z в этой точке. Остается выяснить, каким образом меняются множители как функции времени вдоль оптималь- оптимального пути. Нам хотелось бы уметь вычислить dfy.jdt. Дифференцирование показывает, что *) В работах, связанных с принципом максимума Л. С. Понтря- гина, функции А,- именуются импульсами. (Прим. ред.)
23] ОГРАНИЧЕНИЯ В ВИДЕ НЕРАВЕНСТВ 257 В важном случае, когда дифференциальные уравнения не за- зависят от времени, взяв частную производную по у;- от E.93), приходим к соотношению i Из этих двух выражений и из E.93, а) получим уравнения Эйлера для производной по времени функциональных мно- множителей ТА + 2ШЬ = °> '=1>...,yV. E.97) Эти N дифференциальных уравнений первого порядка для множителей вместе с N исходными уравнениями -% = gt(y,*, 0 E-98) и уравнением E.93, а) образуют систему из 2iV-j- 1 уравнений, которую можно разрешить относительно N функциональных множителей, N величин уь уь ..., yN и функции политики. 2/V постоянных интегрирования определяются с помощью N начальных значений уу заданных конечных значений у и усло- условий E.94,d). Как и в предшествующих параграфах, различные другие необходимые условия легко следуют из требования, чтобы значение z в E.92) давало абсолютный минимум. Указанная выше задача относится к типу так называемых «задач Майера». Обобщая, можно комбинировать задачи Ла- гранжа и Майера и пытаться минимизировать функционал, со- содержащий, кроме интеграла от функции, еще дополнительное слагаемое в виде функции, оцениваемой в концевой точке, причем эта функция содержит некоторые переменные, ко- конечные значения которых не определены заранее. Здесь при- применимы предыдущие рассуждения и результаты выводятся легко. Эта весьма общая задача называется «задачей Больца». 23. ОГРАНИЧЕНИЯ В ВИДЕ НЕРАВЕНСТВ Во многих современных приложениях мы встречаемся с задачами, где на искомые решения налагаются ограничения в виде неравенств. 9 Р. Беллман, С. Дрейфус
258 влриациопнор исчисление [гл. v Обратившись к сформулированной в предыдущем пара- параграфе задаче, сделаем допущение о том, что управляющая функция z должна быгь выбрана таким образом, чтобы вы- выполнялось ограничение h(y, *)<0. E.99) На границе этой области первое уравнение E.93) не имеет силы. Таким образом E.97) принимает вид rftfV^tf (у*Н?\* 0. E.100) dt dyi L> dvt dyj \ Li dz ду,-1 dyt K ' На границе области, определяемой уравнением h(yy z) = 0, имеем: dh i dh dz л •- ¦« rn \ b 0 (o.lOl) Значит, где и E. 100) t dyt ' с h dyu можно переписать в виде л N 1 j Л , ^/_]_ dh "l ' = % dgj df dz dyj dh dz E.103) E.104) Мы видим, таким образом, что с ограничениями в виде неравенств указанного типа можно легко справиться. В клас- классической теории (х появляется как дополнительный множи- множитель Лагранжа, вводимый для включения ограничения. 24. УРАВНЕНИЕ ГАМИЛЬТОНА - ЯКОБИ Покажем теперь, что уравнение Гамильтона — Якоби клас- классической механики чрезвычайно просто следует из принципа оптимальности, связанного в данном случае с принципом Га- Гамильтона. Принцип Гамильтона состоит в том, что частица
24] УРАВНЕНИЕ ГАМИЛЬТОНА—ЯКОБИ 259 движется таким образом, чтобы лагранжиан \L(q, q, t)dt об- рагился в минимум. Пусть q— вектор, описывающий состояние системы (г. е. в терминологии классической механики q есть точка в кон- конфигурационном пространстве) и пусть q = dq/dt— искомая величина (решение), которая должна быть выбрана оптималь- оптимальным образом. Задача заключается в том, чтобы перейти из состояния Q, заданного в момент t{b в состояние q в момент t t таким образом, чтобы минимизировать функционал ^ L (q, qy to t\)dtv Поступаем следующим образом. Определим функцию S(q, t\ Q, ^0), равную минимальному значению функционала / \L(q, q> ti)dtl при соответствующих граничных условиях. 'о Затем, рассматривая оба конца интервала как перемен- переменные, получим два соотношения: , t; Q, g = min[L(Q, Q, t{)) Д -f S(q, t\ Q+ Q^t9 + Д)], E.105) S(q, t\ Q, U) = m\x\[L(q, q, t)\ + S(q — q\ t - A; Q, ^0)|. g[t) E.106) Эти уравнения выiекают из принципа оптимальности, при- примененного к каждому концу интервала. В момент tQ 0 = min|L+Q;g + ||, E.107) что влечет за собой, если определить импульс Р, как обычно, через —, Р dQ* %=-% = * №.оч Выражение E.106) для произвольного момента времени t приводит к двум уравнениям: г\ т • dS dS ,
260 ВАРИАЦИОННОЕ ИСЧИСЛЕНИЕ [ГЛ. V Определяя функцию Гамильтона Н (q, p, t) согласно фор- формуле H—pq—U получим из E.109) уравнение Гамильто- Гамильтона — Якоби в частных производных Начальное условие о том, что в момент tQ система нахо- находилась в состоянии Q, определяет требуемые константы ин- интегрирования для функции решения S(q,t; Q, t0). Кроме того, если известны начальные импульсы Р, то из уравнения E.108) находим q = q{t\ Q, Р, *0), а из E.110) p=p(t; Q, Р, *0). Следовательно, решение уравнения Гамильтона — Якоби E.111) выдает нам положение q и импульсы р как функции от вре- времени и начальных условий. Поскольку методы для аналити- аналитического отыскания решения E.111) и нахождения координат и импульсов как функций от времени рассматриваются во многих публикациях, мы не будем здесь углубляться в детали. 25. ДИСКРЕТНЫЕ ПРИБЛИЖЕНИЯ Если мы хотим применить цифровые вычислительные ма- машины для численного решения указанных вариационных за- задач но намеченному выше пути, то необходимо преобразо- преобразовать нелинейное дифференциальное уравнение в частных производных E.46) в уравнение, требующее только арифме- арифметических операций. Это можно сделать разными способами. Один класс ме- методов основан на дискретной аппроксимации точного уравне- уравнения; другой — на получении точного уравнения для дискретной аппроксимации исходного непрерывного процесса. Первый класс содержит общепринятые методы, изложенные в целом ряде легко доступных источников. Поскольку в настоящей книге они не будут применяться, мы приступим к рассмотре- рассмотрению методов второго типа, который будет использован при изучении траекторных процессов, многошаговых процессов производства и процессов управления с обратной связью. Вместо того чтобы выбирать среди функций у(х), задан- заданных на всем интервале [а, Ь\ предположим, что допускается только выбор значений функции у(х) в точках а = к\у
251 дискретные приближения 261 (k-\-\)ky ..., Nk—b. Вместо минимизации интеграла /> x)dx E.112) мы теперь ищем минимум конечной суммы N- 1 1м(У)= 2 giyv (Ум-Уд/Ь ^)Д> E.113) i= к где y(th)=yit и производная у' приближается выражением В общем случае вместо минимизации интеграла ь I(y) = \g(y> *> x)dx, E.114) а где $Z = h(y, г9 х\ у(а) = с, E.115) мы хотим минимизировать сумму N- 1 где Обозначив /л @ = min/л О), E.118) мы путем обычных рассуждений придем к нелинейному диф- дифференциальному уравнению fk(c) = min[g(c, zki M)b+Url(c-\-h(yki zki АД)Д)]. zk E.119) Если гл подчинены дополнительным ограничениям, то мини- минимум берется по соответствующему множеству. В пределе при Д -> 0 мы получим, конечно, такое же нелинейное уравнение в частных производных, как и раньше. Именно уравнения такого типа мы будем использовать в сле- следующей главе для получения численного решения траектор- ных задач.
262 ВАРИАЦИОННОЕ ИСЧИСЛЕНИЕ [ГЛ. V 26. ОБСУЖДЕНИЕ Описанная выше дискретная вариационная задача полу- получается применением простейшей приближенной формулы для вычисления площади под кривой. Используя правило трапеций, мы получим более сложное выражение, чем E.116), а более точные квадратурные формулы, как, например, формула Гаусса, приводят к сумме вида 7V-1 2 zb Xt)\ C.120) где хг больше не являются равноотстоящими. Эта идея будет развита далее в главе XII. Поскольку эти вариационные за- задачи можно рассматривать с помощью того же аппарата функциональных уравнений, то ценой небольших дополни- дополнительных усилий мы можем получить существенное повыше- повышение точности. Точно так же и E.117) получается из E.115) с помощью грубого приближения (« -f I) Д u'-f 1) Д -j?-dx= \ /г (v, z> x)dx^zh(yiy г.-, iA) Л, E.121) ИЛИ Ун-1—yi = h(yi, ziy гД)Д. E.122) Снова более точная квадратурная формула позволит дать значительное повышение точности при небольшом увеличе- увеличении объема вычислений. Однако в дальнейшем мы будем применять только про- простейшее прямоугольное приближение и будем иметь дело с соотношениями типа E.116) и E.117), так как они достаточны для демонстрации используемых методов. 27. ДВУХТОЧЕЧНЫЕ КРАЕВЫЕ ЗАДАЧИ На первый взгляд кажется довольно неожиданным, что при подходе с помощью функциональных уравнений двухто- двухточечные краевые задачи можно замени 1ь задачами с начальным значением.
27] ДВУХТОЧЕЧНЫЕ КРАЕВЫЕ ЗАДАЧИ 263 задачу минимизации суммы N— 1 !и(у) = 2 8(У» zi> /Л)А> E.123) Рассмотрим задачу минимизации суммы N— 1 где (a) У« = С> } E.124) (b) Уш =Уг лг h (yti ziy /A) A J и nei никакого ограничения на значение ум~\- Тогда для ? = 0, 1, 2, ..., N — 2 имеет место рекуррентное соотно- соотношение E.119) fN_x(c)= min g(cyzN-u (ЛГ —1)Д)Д. E.125) Мы называем эту задачу задачей о начальном значении, посколь- поскольку /м- 1 (с) известно, а с помощью простого итеративного про- процесса, применяемого к E.119), можно определить /0 (с). Что получится, если зна- Возмошш . чение ум задается заранее? состояния— \ Конечное Тогда fN-\(c) находится «а шаге N-2 ^ \ ^^^^ не из E.125), а из выражения /лг - 1 (О = ?"(?> zN - ь (Л/— 1) А) А, E.126) где -гд/ _ 1 определяется со- oi ношением / состояния , , , /на шаге /V-7 УМ = С -|— П (Г, 2м — ], (N—-1)Д)Д. E.127) Рис- 62- Иными словами, ^tv-i находится из условия, что мы должны идти из состояния с в фиксированное состояние ^^v- Если таким путем получено верное значение /м- \ @> то дальше вычисления выполняются, как и выше, по E.119). Когда на z наложены ограничения, может оказаться не- невозможным прийти в ум на шаге N из любого с на шаге N—1. В этом случае/лг_ 1 (г) определена только для тех г, из которых мы приходим в ум- Аналогично fN-2(c) определена только для тех с, из которых можно прийти в возможные состояния на шаге N— 1, и т. д. (рис. 62). Как обычно, если следовать методу динамического про- программирования, ограничения упрощают численное решение.
264 ВАРИАЦИОННОЕ ИСЧИСЛЕНИЕ [ГЛ. V 28. ДВОЙСТВЕННОСТЬ Поясним сделанное выше замечание, что вариационное исчисление и динамическое программирование представляют собой дополняющие друг друга теории. В вариационном ис- исчислении экстремальную кривую рассматривают как геомет- геометрическое место точек и пытаются найти эту кривую с по- помощью дифференциального уравнения. В теории динамического программирования за экстремаль принимают огибающую ка- касательных и пытаются определить оптимальное направление в каждой точке экстремали. Из двойственности евклидовой геометрии следует, что кривую можно с одинаковым успехом рассматривать как геометрическое место точек и как огибающую касательных. Следовательно, мы видим, что два представленных здесь под- подхода — подход с помощью вариационного исчисления и поД- ход с помощью динамического программирования — двойст- двойственны друг к другу. По этой причине можно ожидать, что объединение этих двух подходов окажется гораздо более мощным методом, чем каждый из них в отдельности. 29. ЗАКЛЮЧЕНИЕ В этой главе мы познакомили читателя с основными за- задачами вариационного исчисления и с подходами к решению этих задач классическими методами и методами динамического программирования. После изложения некоторых основных результатов ва- вариационного исчисления мы показали, как дать их простой вывод с помощью функционального уравнения, полученною из принципа оптимальности. Мы подробно вскрыли трудности, возникающие при по- попытке использования уравнения Эйлера, а затем показали, как аппарат функциональных уравнений устраняет эти трудности. В последующих главах это утверждение будет проил- проиллюстрировано примерами из области исследования оптималь- оптимальных траекторий, многошаговых процессов производства и процессов управления с обраiной связью. Для того чтобы
КОММЕНТАРИИ И БИБЛИОГРАФИЯ 265 читатель сохранил интерес к изложению, заметим, что при применении динамического программирования возни- возникают новые трудности *), в частности «проклятие раз- размерности». КОММЕНТАРИИ И БИБЛИОГРАФИЯ § 1. Читатель, интересующийся классическим вариационным исчислением, может обратиться к книгам: R. С о u r a n t and D. H i 1 b e r t, Methods of Mathematical Physics, Interscience Publishers, Inc., New York, 1958 [русский перевод: К у р а н т Р. и Г и л ь б е р т Д., Методы математической фи- физики, М.—Л., ГИТТЛ, 1951]. G. A. Bliss, Lectures on the Calculus oi Variations, University of Chicago Press, Chicago, Illinois, 1946 [русский перевод: Д. А. Б л и с с, Лекции по вариационному исчислению, М., ИЛ, 1950]. Случай сложного функционала вида ь где Flt F2—интегральные функционалы, рассматривается в работе: R. S. I n g a r d e n, Composite variational problems, Bull, de ГАса- demie Polonaise des Sciences, Serie des sci. math., astr. et phys., vol. 7, 1959, pp. 687—689. § 7. Проблемам устойчивости, связанным с дифференциальными уравнениями, посвящена книга: R. Bellman, Stability Theory of Differential Equations, McGraw- Hill Book Co., Inc., New York, 1954 [русский перевод: Р. Б е л л- м а н, Теория устойчивости решений дифференциальных урав- уравнений, ИЛ, 1954], где можно найти много других ссылок. § 9. Читателю, который интересуется исследованием решений частных классов вариационных задач, рекомендуем работы: R. Bellman, I. Glicksberg and О. Gross, On some vari- variational problems occurring in the theory of dynamic program- programming, Rend. Circ. Matem. Palermo, serie 2, tomo 3, 1954, pp. 1—35. *) Это замечание, по-видимому, адресовано читателю-матема- читателю-математику, так как интерес читателя-прикладника начинает резко падать, когда ему становится ясным, что эти новые трудности являются практически непреодолимыми. (Прим. ред.)
266 вариационной исчислении [гл. v R. Bellman, I. Glicksberg and О. Gross, Some problems in the theory oi dynamic programming — a smoothing problem, J. Soc. Indust. Appl. Math., vol. 2, 1954, pp. 82—89. R. Bellman, I. Glicksberg and O. Gross, On the bang- bang control problem, Q. Appl. Math., vol. 14, 1956, pp. 11- 18. R. Bellman, I. Glicksberg and O. Gross, Some non-clas- non-classical problems in the calculus oi variations, Proc. Amer. Math. Soc, vol. 7, 1956, pp. 87—94. R. В e 11 m a n, W. H. F 1 e m i n g and D. V. W i d d e r, Variatio- nal problems with constraints, Annali di Mate., vol. 41, 1956, pp. 301—323. § 11. Изложенный здесь подход приведен в главе 9 книги автора «Динамическое программирование». Впервые он был дан в ряде более ранних работ: R. Bellman, Dynamic programming and a new formalism in the calculus oi variations, Proc. Nat. Acad. Sci. USA, vol. 39, 1953, pp. 1077—1082. R. Bellman, On the application oi dynamic programming to va- riational problems arising in mathematical economics, Proc. Sym- Symposium in Calculus oi Variations and Applications, McGraw-Hill Book Co., Inc., New York, 1956, pp. 115—138. § 12. Строгий вывод основного нелинейного уравнения в част- частных производных E.46) с точки зрения классической теории дан в работе: Н. О s b о г n, On the foundations oi dynamic programming, J. Math, and Mcch., vol. 8, 1959, pp. 867—872. § 13. Один из способов получения уравнения Эйлера, исполь- использующий теорию характеристик, 'можно найти в главе 7 книги: R. Bellman, Dynamic Programming oi Continuous Processes, The RAND Corporation, Report R-271, 1954. Результаты принадлежат Осборну. Другой способ можно найти в статье: S. D г е > i u s, Dynamic programming and the calculus oi varia- variations, J. Math. Anal, and Appl., vol. 1, 1960, pp. 228—239, где имеются остальные результаты главы. § 22. Интерес к неявным вариационным задачам ожил в послед- последние годы в связи с одним видом управления с обратной связью, называемым релейным. См. работы: J. P. L a S а 11 е, On time-optimal control systems, Proc. Nat. Acad. Sci. USA, vol. 45, 1959, pp. 573—577. R. Bellman, I. Glicksberg and O. G г о s s, On the bang- bang control problem, Q. Appl. Math, vol. 14, 1956, pp. 11—18.
КОММЕНТАРИИ И БИБЛИОГРАФИЯ 267 Многочисленные ссылки на «принцип максимума> Понтрягина и последующие работы русской школы даны в книге: R. Bellman, Adaptive Control Processes: A Guided Tour, Prin- Princeton University Press, Princeton, New Jersey, 1961 [русский перевод: P. Б е л л м а н, Процессы регулирования с адаптацией, Изд-во «На\ка», 1964]. См. также J. P. LaSalle and S. L e f s с h e t z, Recent Soviet contributions to ordinary differential equations and nonlinear mechanics, J. Math. Anal and Appl., vol. 2, 1961. C. A. D e s о е r, The bang-bang servo problem treated by varia- tional techniques, Information and Control, vol. 2, 1959, pp.333 — 348. C. A. D e s о е r, Pontrjagin's maximum principle and the principle of optimality, J. Franklin Inst., vol. 271, 1961, pp. 361—368. § 24. Помещенное здесь изложение следует работе: S. Dreyfus, Dynamic programming and the calculus of varia- variations, J. Math. Anal, and Appl., vol. 1, 1960, pp. 228—239. О классическом подходе см. Е. Т. W h i 11 a k e r, A Treatise in the Analytic Dynamics of Par- Particles and Rigid Bodies, Cambridge University Press, Cambridge, 1944. § 25. По поводу доказательства сходимости дискретных вариа- вариационных задач к непрерывным вариационным задачам см. главу 9 книги «Динамическое программирование», где приведены резуль- результаты В. Флеминга. R. Bellman, Functional equations in the theory of dynamic prog- programming— VI: a direct convergence proof, Ann. Math., vol. 65, 1957, pp. 215-223. H. Osborn, The problem of continuous programs, Pacific J. Math., vol. 6, 1956, pp. 721-731. § 27. Более детальное знакомство с предметом можно получить по упомянутой выше книге Беллмана. По поводу традиционных методов см. L. Fox, The Numerical Solution of Two-point Boundary Problems in Ordinary Differential Equations, Oxford University Press, Oxford, 1957. L. С о 11 a t z, Numerische Behandlung von Differentialgleichungen, Berlin — Gottingen — Heidelberg, 1955. Новый подход, основанный на идее квазилинеаризации, дан в работе: R. К а 1 a b a, On nonlinear differential equations, the maximum operation, and monotone convergence. J. Math and Mech., vol. 8, 1959, pp. 519-574.
268 ВАРИАЦИОННОЕ ИСЧИСЛЕНИЕ |>Л. V Применение к оптике дано в работе: R. К а 1 a b a, Dynamic Programming, Fermat's Principle and the Eikonal Equation, Jour. Optical Soc. America, vol. 51, 1961, pp. 1150-1151. Мы мало сказали о связи между устойчивостью исправлением. Интересные сведения об этих вопросах можно найти в работах: Т. Hacker, Stability of partially controlled motions of an aircraft, J. Aerospace Sci., vol. 28, 1961, pp. 15—26. R. Bellman, Directions of mathematical research in nonlinear circuit theory, IRE Trans, of Professional Group on Circuit The- Theory, vol. CT-7, 1960, pp. 542—553. ДОПОЛНИТЕЛЬНАЯ ЛИТЕРАТУРА Для более полного ознакомления с классическим вариационным исчислением можно также рекомендовать книги: Н. М. Г ю н т е р, Курс вариационного исчисления, Гостсхиздат, 1941. И. М. Г е л ь ф а н д, С. В. Фомин, Вариационное исчисление, М., Физматгиз, 1961. О связи между классическим вариационным исчислением, прин- принципом максимума Л. С. Понтрягина и динамическим программиро- программированием, см. Л. С. П о н т р я г и н, В. Г. Болтянский, Р. В. Г а м к р е- лидзе, Е. Ф. Мищенко, Математическая теория оптимальных про- процессов, Физматгиз, 1961. Л. И. Р о з о н о э р, Принцип максимума Л. С. Понтрягина в теории оптимальных систем, Автоматика и телемеханика, т. 20, № 10—12, 1959. В. А. Троицкий, О вариационных задачах оптимизации про- процессов управления, Прикладная математика и механика, т. 26, в. 1, 1962. В. Ф. Кротов, Методы решения вариационных задач на осно- основе достаточного условия абсолютного минимума, Автоматика и те- телемеханика, № 12, 1962; № 5, 1963. L. D. В е г с о v i t z, Variational Methods in Problems of control and programming, Journ. of Math. Anal, and AppL, № 3, 1961. См. также А. Я. Дубовицкий, А. А. Милютин, Задачи на экстре- экстремум при наличии ограничений, Доклады АН СССР, т. 149, № 4, 1963, стр. 759—762.
Г ЛАВА VI ОПТИМАЛЬНЫЕ ТРАЕКТОРИИ 1. ВВЕДЕНИЕ Торговые и военные применения авиации, научные аспекты создания спутников и волшебные перспективы межпланетных путешествий — все это вместе взятое привело к огромной концентрации внимания на проблеме определения допустимых и оптимальных траекторий. По мере совершенствования тех- технических возможностей самолетов выбор траекторий, дающих минимальное время полета либо максимальную дальность, на основе одной лишь интуиции становится все менее реаль- реальным. С другой стороны, вследствие все возрастающего зна- значения сокращения затрат времени в современном обществе и увеличивающейся стоимости топлива, задача определения эф- эффективных режимов работы становится все более существен- существенной. С появлением самолетов, способных совершать полет и вблизи поверхности земли и в стратосфере, и на дозвуковых и на сверхзвуковых скоростях, число возможных типов тра- траекторий становится громадным. Тем самым возрастает и слож- сложность выбора из них оптимальной траектории (оптимальной политики). Трудности проблемы установления оптимальных траекто- траекторий становятся ясными, если принять во внимание, что заман- заманчивая область операций на сверхзвуковых скоростях отделена от дозвуковой области переходной границей, звуковым барье- барьером, который вызывает очень большое лобовое сопротивле- сопротивление. Невозможно ожидать того, чтобы какая-либо простая поли- политика, основанная на одношаговом рассмотрении, позволила бы определить эффективную траекторию полета, которая проникает сквозь этот барьер. Кроме того, явления изменения режима,
270 оптимальный траектории | гл. vi связанные с высокоэффективными двигателями, ясно указывают на желательность сверхзвукового полета. Обращаясь к ракетам и спутникам, напомним тот факт, что каждый фунт полезной нагрузки требует тысяч фунтов топлива. Отсюда следует, что и здесь тщательный выбор траектории является существенным. Необходимо не только старательно рассчитать систему пилотирования и управления, но и соответственно выбрать сам способ управления, который должен быть осуществлен. Этот вопрос мы более детально рассмотрим ниже. На дальнейших страницах мы будем использовать для изу- изучения множества проблем, возникающих в аэродинамике и процессах управления, динамическое программирование (как аандартными, так и неожиданными способами). Хотя многие из этих проблем могут быть сформулиро- сформулированы и в терминах вариационного исчисления, мы по причи- причинам, рассмотренным в предшествующей главе, будем для по- получения численных результатов использовать метод функци- функциональных уравнений. 2. УПРОЩЕННАЯ ЗАДАЧА О ВЫБОРЕ ТРАЕКТОРИИ Хотя вычислительный подход динамического программиро- программирования уже хорошо знаком читателю, мы чувствуем, что тем не менее стоит затратить время на формулировку и решение простой задачи о выборе оптимального пути. Применимость используемо- используемого нами здесь метода станет >3 сразу же очевидной, когда мы рассмотрим задачу о на- наборе высоты самолетом за минимальное время. Предположим, что мы желаем найти такой путь, ко- который минимизирует сумму Рис. 63. чисел, указанных на каждом из звеньев сетки, изображен- изображенной на рис. 63. Движение происходит от точки А к точке Ву причем всегда вправо. Рассматривая А как начало координат,
21 УПРОШЕННАЯ ЗАДАЧ \ О ВЫБОРЕ ТРАЕКТОРИИ 271 а В как точку с координатами @, 6), мы построим рекур- рекуррентное соотношение rd(x,y; x+ 1, у+ 1)+/С* + Ь У+ 1I у v '^ ld(x,y; лг+Ь ^— l)+/(Ar-f I, j/— 1)J» где ^(лг,^; jc —{— 1, у-\- 1) представляет собой число, указан- указанное на звене между точками (х,у) и (х-\-\у у-\-1), которое, А/7 как предполагается, представляет расстояние между точками (х,у) и (х-{- 1,з7 —i— !)• Решая задачу, мы прежде всего заметим, что /E,1) = 4 и /E,— 1) = 3. Используя эти значения для /(о,у), определим /D,у). Так, /D,2)= 1-1-4 = 5, /D,—2) = 6-f-3 = 9. Заметим также, что из /D,0) оптимальный выбор за- заключается в движении по диагонали вниз. Аналогичным обра- образом мы вычисляем fC,y),/B,у), f(\,y) и, наконец, /@,0). Решение со стрелками, указывающими оптимальные на- направления, сведено в таблицу, приведенную на рис. 64.
272 ОПТИМАЛЬНЫЕ ТРАЕКТОРИИ [ГЛ. VI 3. ДВОЙСТВЕННАЯ ЗАДАЧА В предшествующем параграфе мы определяли f(x,y) как минимальную сумму расстояний от точки (х, у) до ко- конечной точки. Это приводит к итеративному методу, исполь- использующему движение обратно, ог конечной точки. Однако мы могли бы точно так же ввести иную функцию g(x,у), определяемую как минимальная сумма при движении от начальной точки к (х, у). Это при- привело бы к итерации в пря- прямом направлении, дающей решение, представленное на рис.65. Здесь стрелки должны быть интерпрети- интерпретированы как указатели на- направления, из которого осуществляется приход в точку. Оба варианта, как это и должно было бьпь, приводят к идентичному результату по выбору наилучшего пути от Л к В и по найден- найденной минимальной сумме. Эту двойственность подходов не- необходимо иметь в виду при последующем рассмотрении. 773 Рис. 65. 4. ЗАДАЧА О НАБОРЕ ВЫСОТЫ ЗА МИНИМАЛЬНОЕ ВРЕМЯ Рассмотрим следующую задачу: какова траектория по- полета (в плоскости обобщенных координат высота — скорость), минимизирующая время, требуемое для подьема самолета с начальной высоты И при начальной скорости V до заданной конечной высоты Hf и скорости VF. Уравнение движения*), *) Уравнения FЛ) эквивалентны более очевидным соотношениям D)-Wgs\nbt ~ Здесь W—масса самолета. При записи этих соотношений мы пре- пренебрегли отличием между углом тангажа и углом наклона траекто- траектории. {Прим. ред.)
5] ФОРМУЛИРОВКА ЗАДАЧИ 273 выведенное при предположениях квазисгационарности, имеет вид аи 4t= l+gdH где тяга Т является функцией только высоты Я и скорости \\ гак как мы предполагаем, чго установка регулятора тяги фиксирована. Для простоты в этом примере мы предположим, что лобовое сопротивление D также является функцией И и V, пренебрегая тем самым изменением сопротивления, вы- вызванным изменением наклона траектории и нормальным уско- ускорением. Ограничимся также только траекториями, не вклю- включающими маневров типа «горок» и пикирования. Более точное решение, при котором лобовое сопротивление рас- сма1риваегся как функция Я, V, угла наклона траектории 0 и 0, и не включающее никаких искусственных ограничений на допустимые траектории, также возможно с помощью ди- динамического программирования и будет дано в § 9- 5. ФОРМУЛИРОВКА В ТЕРМИНАХ ДИНАМИЧЕСКОГО ПРОГРАММИРОВАНИЯ Основное уравнение динамического программирования для задачи о наборе высоты за минимальное время имеет вид /(Я, V) = m\n[t(H, ДЯ, V9 6) + 8 -\-/(Н+Ш, V+XV[H, ДЯ, V, 6])J. F.2) В этом уравнении /(Я, V) представляет минимальное время грдъема от начального положения Н} V до заданных конечных Ир и VF. Выражение t (М, ЛЯ, V, 6) определяет время подъема до высоты Н-\- ДЯ с углом подъема 6. Урав- Уравнение F.2) устанавливает тот очевидный факт, что полное время набора высоты представляет собой сумму (a) времени подъема с углом 8 до некоторой близкой высоты, (b) минимального времени подъема из нового положения до конечной точки, минимизируемого по всем возможным углам. Это уравнение будет основным в нашем аналитическом и вычислительном рассмотрении.
-74 ОПТИМАЛЬНЫЕ ТРАЕКТОРИИ [ГЛ. VI б. АНАЛИТИЧЕСКОЕ РЕШЕНИЕ Подставляя выражение из F.1) в F.2), получим уравнение 4fe--f]«)]. Разлагая выражение в правой части в степенной ряд вблизи точки (Н, V), приходим к новому уравнению f(H, V) = mi 1. (/•_?)) где о(ДЯ) представляет собой слагаемое высшего порядка малости относительно А//. В силу того, чго /(//, V) в правой и левой частях вза- взаимно уничтожаются, мы получим, разделив на \Н и устрем- устремляя ДЯ к нулю, равенство Рассмотрение этого уравнения приводит к трем случаям: (a) Если 1 + -Цг ( ^— Z> )Jp > 0, необходимо выбирать sin 0 столь большим, сколь возможно. (b) Если 1 + -^ ^ Г- D j ^ < 0, выбирать F.6) sin 6=0. (c) Если ! + ¦§>( Г-Я)^ = О, то Уравнение для случая (с) мы выводим, исключая ^ и -^ и пользуясь тем, что уравнение F.5) остается справедливым.
ВЫЧИСЛИТЕЛЬНАЯ ПРОЦЕДУРА 275 Далее составляются и приравниваются смешанные производ- производные ;"/ и "/ Полученное уравнение определяет тра- orloV oVurl екторию в плоскости (Я, V). Теперь мы можем сделать заключение, что оптимальная траектория состоит из основ- основной кривой, не зависящей от конечных точек, а также переход- переходных участков, на которых совершается либо горизонтальный полет, либо полет с наибольшим углом наклона траектории. Прямое решение уравнений типа F.5) приводит ко мно- многим трудностям. В настоящее время только процедура проб и ошибок позволяет прийти к точной комбинации эйлеро- эйлеровых траекторий и переходных кривых, хотя в специальных случаях могут быть использованы и аналитические методы. 7. ВЫЧИСЛИТЕЛЬНАЯ ПРОЦЕДУРА Обратимся теперь к рассмотрению вычислительных аспек- аспектов задачи о наборе высоты. Предположим, что желатель- желательно пролететь от точки 1 до точки 2 (рис. 66) за минимальное время. Мы можем представлять себе плоскость (Н, V) как сет- сетку из элементов произ- произвольных размеров. Огра- Ограничимся только горизон- горизонтальными и вертикальны- вертикальными приращениями, соот- соответствующими шагу сетки. С физической точки зре- зрения мы ограничиваемся движениями самолета с приращением высоты на постоянной скорости и ускорениями на постоян- постоянной высоте. Линейность нашего «вырожденного» квазиста- квазистационарного уравнения позволяет сделать это. Мы можем теперь попытаться осуществить прямой под- подход к решению, т.е., начиная из точки /, испытать все возможные пути и найти путь, требующий минимального времени, путем исключения. Этод «метод грубой силы» / 2 Скорость Рис. 66. Сетка скорость—высота.
276 ОПТИМАЛЬНЫЕ ТРАЕКТОРИИ [ГЛ. VI обременителен по времени даже для вычислительной техники; например, сетка размером 10 X Ю для испытания всех возмож- возможных путей требует 875 000 отдельных просчетов. Вместо этого мы используем метод, описанный в § 2. Построим вспомо- вспомогательную матрицу со следующими свойствами: 1) оптимальный путь от любой точки до конечной точки 2 задается следованием по пути, указанному стрелками; 2) численные значения времени, затрачиваемого на опти- оптимальный путь от любой точки, указывается числом в таблице. Для построения такой матрицы потребуется лишь малое число просчетов. Например, для сетки 10 X Ю необходимо 180 вычислений по сравнению с 875 000 для «метода грубой силы». 8. ОБРАЗЕЦ РАСЧЕТА Для юго чтобы показать численные результаты, получаю- получающиеся при применении динамического программирования к задаче о наборе высоты за минимальное время, был выбран гипотетический турбореактивный самолет-перехватчик с воз- возможной высотой полета 60 000 футов и скоростью М = 2. Мы предполагаем, что читатель знаком с обычной терми- терминологией авиационной техники *). Предположение, что поляра является параболической, и использование уравнений движения приводят к следующим выражениям: Cd = CDq+KCL, F.7) г NW (йл\ 7V=cos6-f- — 6'sine, F.9) q= \ШЪат W= 148lSam (-?)*. F.10) Для подъема с М = const имеем: *) При переводе сохранены обозначения оригинала. Связь их с принятыми в СССР стандартными обозначениями ясна из текста. (Прим. ред.)
8] ОБРАЗЕЦ РАСЧЕТА 277 Для ускорения при //= const имеем: л*_ S F.12) "'— T—D ' Здесь Cd0 и /С—параметры уравнения поляры, связы- связывающего коэффициенты лобового сопротивления Со и Рис. 67. Зависимость коэффициента CDq от числа М. подъемной силы С/., являются функциями числа М. Графики их даны на рис. 67 и 68. Доступная тяга как функция высоты и скорости, если уста- установка регулятора фик- фиксирована, показана на рис. 6Я Мы произведем построение матрицы (//, V), для которой вы- выберем АЯ=1000 фу- футов и AM = 0,02. На- Начальная точка имеет координаты (Н= 0, М=0,8), а конечная (//= 60 000, М = 2,0), 2,0 Зависимость коэффициента К что приводит к матри- от числа М* це размера 61 X 61. (Вообще говоря, нет необходимости в том, чтобы матрица была квадратной.) Вторая таблица (сетка), аналогичная построенной
278 ОПТИМАЛЬНЫЕ ТРАЕКТОРИИ [ГЛ. VI в предшествующем примере, была получена с помощью бы- быстродействующей вычислительной машины и были определены .Уровень л?оря -20 ООО фут 40000 0,5 7,0 М 15 2.0 Рис. 69. График доступной тяги. ВО I" ? го 10 О F Случай А : постоянное W,N-7,0 Случай8: AW.N = 7,0 Случай С: Л W,N= cos О // \g J 0,6 0,8 12 7,4 M 1,6 2,0 Рис. 70. График оптимального пути в координатах высота — скорость. оптимальные траектории для нескольких случаев. Резуль- Результаты показаны на рис. 70—72.
8] ОБРАЗЕН РАСЧЕТА 279 Рассматривая рис. 70, можно легко узнать общее решение описанного выше типа. Части траектории GH и 1J являются 60 50 30 20 — 10 \ 1 / / и У Случай А. постоянное И Случай В- AW.N=IO Случай С. AW,N=cos 0 10 20 30 40 50 X (в морских милях) 60 70 80 Рис. 71. График оптимального пути в координатах высота—горизон- высота—горизонтальная дальность. двумя ветвями эйлеровой траектории. Часть FG есть пере- переход от стартовой течки до дозвуковой эйлеровой траектории. Часть HI есть переход ^ между дозвуковой и сверх- |^ звуковой вешями эйлеро- v вой траектории. Часть Ж есть переход от сверхзву- сверхзвуковой ветви эйлеровой тра- ^ екгории к конечной точке. В случае Л (рис. 70) принято, ч'ю вес самолета (вместе с топливом) ос- остается постоянным и рав- равным 40 000 фунтов и что коэффициент перегрузки N равен единице. Время набора высо- высоты по оптимальной траектории оказалось равным 277 секундам. 240 W 270 250 ^ К сею Рис. 72. Зависимость минимального вре- времени набора высоты от начального веса.
280 оптимальные траектории [гл. vi В случае В эффект изменения веса вдоль траектории учи- учитывался путем введения зависимости удельного расхода топ- топлива от высоты и скорости. Так как при построении второй таблицы мы движемся в обратном направлении, то приходится начинать расчет с не- некоторого предполагаемого значения веса в конце траектории и вычислять его приращения при движении по таблице. Ин- Интересным побочным результатом расчетов являются, конеч- конечно, данные о зависимости времени набора высоты от началь- начального веса. При начальном весе, равном 40 000 фунтов, время подъема составляет 252 секунды, а затраты топлива 3450 фунтов. В случае С исследовался эффект влияния угла наклона траектории на лобовое сопротивление самолета. Влиянием нормальных ускорений на лобовое сопротивление пренебрега- лось. Использованный метод расчета аналогичен итерацион- итерационному процессу, примененному при учете влияния изменений веса. Время набора высоты в случае С оказалось равным 251 секунде. Замечено, что изменение лобового сопротивления, вызван- вызванное нормальными ускорениями, является важным, особенно в переходных точках, таких как выравнивание от первона- первоначального угла наклона к горизонтальному ускорению. Общее решение, учитывающее этот эффект, можно получить распрост- распространением описанного здесь метода (см. § 9). На рис. 71 показан профиль полета (траектория в коор- координатах высота — горизонтальная дальность) для трех иссле- исследованных случаев, где приращение горизонтальной дальности для малых М вычислялось как произведение М на горизон- горизонтальную компоненту средней скорости. На рис. 72 приведен полезный график, который является побочным результатом вычислительной методики, использованной в случае В. Что касается практического приложения этих теорети- теоретических результатов, то было бы слишком оптимистичным ожидать, что человек или автопилот мог бы следовать такой сложной программе подъема по высоте и скорости, какая была здесь указана. К счастью, можно найти более практическую траекторию, состоящую из двух участков подъема с постоянным числом М и одного участка разгона на постоянной высоте, которая, с точки зрения затрат времени, близка к сложной траектории,
9] ОБОБЩЕННАЯ ЗАДАЧ\ О НАБОРЕ ВЫСОТЫ 281 найденной в примере. Следовательно, теоретическое решение должно служить как бы проводником и критерием оценки при нахождении практически приемлемых траекторий с ми- минимальными затратами времени. 9. ОБОБЩЕННАЯ ЗАДАЧА О НАБОРЕ ВЫСОТЫ Задача о наборе высоты за минимальное время, рассмот- рассмотренная в предшествующих параграфах, может быть записана в форме, значительно точнее отражающей действительное]ь, если учесть некоторые дополнительные факторы. В частно- частности, кажется, что: 1) необходимо учесть зависимость лобового сопротивле- сопротивления от наклона траектории и нормального ускорения; 2) нормальные ускорения должны быгь ограничены до- допустимыми для пилота и прочности самолета нагрузками; 3) должны быть разрешены пикирование и «горки»; 4) должна быть задана предельная дальность полета. Учет данных факторов не выходит за пределы возмож- возможностей нынешней вычислительной техники. Однако он потре- потребует значительных усилий при программировании и вычис- вычислениях. В идеале для инженеров-проектировщиков и эксплуа- эксплуатационников должны быть доступны как быстрый и легкий метод первого приближения, подобный описанному выше, так и более сложное решение, рассмотренное ниже. Влияние наклона траектории и нормальных ускорений на лобовое сопротивление отражается введением в формулу пе- переменных б и 0. Это приводит к двумерной задаче. Ограни- Ограничения на ускорения определяют границы изменения 0. Про- Программирование 6 эквивалентно программированию угла атаки. Для того чтобы включить пикирование, т. е. увеличение ско- скорости при потере высоты, и «горку», увеличение высоты с потерей скорости, необходимо ввести новую монотонно из- изменяющуюся промежуточную переменную. Эта переменная — энергетический уровень, определяемый как Е=Н-\-^- V2. F.13) Для всех разумных траекторий эта переменная будет уве- увеличиваться при полете с включенным двигателем, хотя высота и скорость по отдельности могут колебаться. Заметим, что
282 ОПТИМАЛЬНЫЕ ТРАЕКТОРИИ [ГЛ. VI при этом не вводится никаких дополнительных переменных, так как знание Е и Н позволяет определять V с помощью соотношения F.13). Наконец, предельная дальность полета ^ может быть задана путем введения постоянного множителя Лагранжа, который экспериментально определяется при иге- рагивном решении. С этими дополнениями рекуррентное соотношение приоб- приобретает в \j\ Д(Дв)= min *<ЬЕ+к%И L dE dt W ds __W cos Q dE~~ J'—D ' dli _ W sin 8 dE ~~ 7 — D 7= T(E, И), 1} F.14) где F.15) F.16) а ограничения по нагрузкам в уравнении F.14) заданы в форме а = а(Е,Н,Ь), Ь = Ь{Е,Н,Ъ). F.17) Численное решение, как это часто отмечалось выше, вклю- включает последовательное вычисление ряда таблиц значений функ- функции двух переменных. 10. ЗАДАЧА О ТРАЕКТОРИИ СПУТНИКА В последующих параграфах мы хотим изучить задачу о выведении спутника на орбиту. Так как вопрос является весьма сложным, изучим упрощенный вариант. Проблема представляет интерес как с аналитической, так и с вычислительной то- точек зрения. Аналитически это вариационная задача типа Майера, в ко- которой одна из переменных (горизонтальная скорость) должна
12] МЛГЕМЛТИЧРХКЛЯ ФОРМУЛИРОВКА 283 бьмь максимизирована в момент полного выгорания топлива, причем имеются некоторые ограничения. Если режим тяги обусловливается заранее или является постоянным, то для решения применима методика предшествующей главы. Если величина тяги, которая входит в уравнение линейно, должна быть выбрана оптимальной при некоторых ограничениях, то аналитический подход затрудняется, но вычислительный алго- алгоритм динамического программирования еще приложим. 11. УПРОЩЕННАЯ ЗАДАЧА Пашей целью является выбор закона (политики) управ- управления тягой и расходования топлива, который позволит вы- вывести спутник на орбиту с заданной высотой при максималь- максимальной горизонтальной компоненте скорости. Для того чтобы ограничить объем вычислений разумными пределами, мы воспользуемся существенными упрощениями, к которым приводят пренебрежение различными аэродина- аэродинамическими силами и предположение о том, что земное поле тяготения является плоскопараллельным. Определение траекторий, обеспечивающих минимум рас- расхода топлива, максимум высоты и т. п., может быть прове- проведено теми же приемами, которые были использованы в пред- предшествующем рассмотрении. Аналогично при помощи тех же методов могут быть рас- рассчитаны более реальные траектории при учете сферичности поля тяготения, — при этом придется привлекать функции двух или более переменных. 12. МАТЕМАТИЧЕСКАЯ ФОРМУЛИРОВКА Уравнения движения спутника, перемещающегося над пло- плоской землей, записываются в декартовой системе координат следующим образом; da dw w dx
[ГЛ. VI F.19) 284 ОПТИМАЛЬНЫЕ ТРАЕКТОРИИ Здесь (см. рис. 73): (a) х и у— как обычно, горизонтальная и вертикальная компоненты, (b) и и w — горизонтальная и вертикальная компоненты скорости, (c) р — величина ускорения, создаваемого реактивными силами, (d) cp—угол наклона силы тяги к горизонту. Если мы введем величину V как скорость, достигаемую спутником в идеальном случае отсутствия гравитационных сил, то получим соотношение ж=~р- F-2°) Переменная V будет монотонной функцией количества топ- топлива. Так как Р = 1СГ' F-20 где Р — тяга, и g dt' F.22) где М — вес и с — скорость вытекающих газов, мы сможем W <р ее Рис. 73. найти М как функцию «идеально достижимой» скорости V: = МРе V/c F.23) где Ме — вес пустой ракеты. Уравнения движения F.18) совместно с соотношениями F.23), которые задают М как функцию V, и F.21), которое
14] решение — i 285 определяет ускорение через тягу и вес, позволяют определить оптимальный наклон и оптимальную величину тяги как функцию V. 13. АНАЛИТИЧЕСКОЕ РЕШЕНИЕ Если р постоянно, то метод предшествующей главы при- приводит к важному заключению, что оптимальная политика, ф, характеризуется тем свойством, что где \ = const. 14. РЕШЕНИЕ С ПОМОЩЬЮ ДИНАМИЧЕСКОГО ПРОГРАММИРОВАНИЯ - I Рассмотрим теперь, как мы сможем использовать метод функциональных уравнений динамического программирования для получения численного решения. Переменными состояниями являются высота у, вертикаль- вертикальная компонента скорости w и идеальная доступная ско- скорость V. Следовательно, мы вводим функцию f(V, w, у), равную добавочной горизонтальной скорости, полученной при старте с высоты у с верти- вертикальной компонентой скорости w и идеальной F.25) доступной скоростью К, при использовании оптималь- оптимальной политики. Обращаясь к уравнениям движения, введенным в § 12, и используя принцип оптимальности, мы получим функцио- функциональное уравнение f(V w у)- Г а ,, ¦ W ,, л ,, _.. - dw wMeev/c А1Д1 /c OC4 jAl/)| F.26) где Д1/ рассматривается как малая величина. Считая V прини- принимающим только конечный ряд значений О, Д V, 2Д V, ..., Л^Д V,
286 оптимальные траектории [гл. vt мы видим, что вычисления сводятся к определению последо- последовательности функций двух переменных f N(w>у) =/(iVA, w, у) при использовании уравнения F.26). 16. РЕШЕНИЕ С ПОМОЩЬЮ ДИНАМИЧЕСКОГО ПРОГРАММИРОВАНИЯ - II Для того чтобы упростить вычисления, используем метод множителей Лагранжа, позволяющий, как это было показано в § 16 главы II, привести задачу к определению последовательности функций одной переменной. Вместо минимизации окончательного значения и, огра- ограниченного заданием высоты и w в конце траектории, рас- рассмотрим проблему максимизации суммы о Vo cosodV+l ^%dV F.27) Vo при выполнении уравнений движения. Здесь X — множитель Лагранжа. Новое функциональное уравнение для максимальной вели- величины имеет вид f(V, w) = max |тях 1 ros срА 1/4- lwMe * V'C А 1/1 ' Ч Р I- gP J / М pVIc — ДУ, [ ^ , F.28) где вторая альтернатива внутри { } представляет решение на границах для малого временного интервала М. Параметр X настраивается вплоть до выхода на ограни- ограничение по высоте. При использовании множителя Лагранжа мы разделяем задачу, первоначально включавшую последо- последовательность функций двух переменных, на ряд задач, вклю- включающих функции одной переменной. Время вычислений значи- значительно уменьшается.
16] ВЫЧИСЛИТЕЛЬНЫЕ РЕЗУЛЬТАТЫ 287 16. ВЫЧИСЛИТЕЛЬНЫЕ РЕЗУЛЬТАТЫ Численное решение находится путем обратной итерации рекуррентного соотношения F.28) от известных окончатель- окончательных величин. До начала вычислений заметим, что если выгорание топлива произойдет при вертикальной компоненте скорости w, то приращение высоты будет равно w^j2g и приращение горизонтальной скорости равно нулю. Следо- Следовательно, /(О, w) = \w<ij2g. Таблица, содержащая /@, w) для диапазона значений w (мы еще не знаем, к какой вели- величине w в момент выгорания приводит оптимальная поли- политика), сохраняется в оперативной памяти вычислительной машины. Эта табулированная функция теперь используется для определения новой функции /(Al/, w)9 равной полной добавочной горизонтальной скорости плюс А, умноженное на высоту, которая может быть достигнута, начиная с малой величины А1/ «располагаемой скорости», т. е. топлива, и вертикальной компоненты скорости w. Это вычисление производится с помощью уравнения F.28). Мы оцениваем приращение, связаннее с выбором различных ср и Р, и срав- сравниваем его с доходом от решения на ограничении. На этой основе мы выбираем оптимальное решение. Результаты этого решения, т. е. значения /(АV, w) для ряда рассмотренных значений w, хранятся в памяти машины. Во второй таблице приводится оптимальное решение для /(Al/, w). В третьей, таблице /(AV, w) записывается полная высота, получаемая при использовании оптимальной политики, начи- начинающейся с точки (А V, w). В этой таблице ведется запись величины, которая не используется при вычислениях, но зато сразу же по окончании итерации уравнения F.28) дает зна- значения полной высоты (а значит, и горизонтальной скорости /(I/, 0)—Х/A/, 0)), получаемой при следовании по оптималь- оптимальной траектории. Удобство этой записи объясняется тем, что при полете мы стремимся максимизировать сумму горизон- горизонтальной скорости и высоты, умноженной на X. После того как описанный выше метод для вычисления /(Al/, w) с ис- использованием таблиц значений /(О, w) запрограммирован на быстродействующей вычислительной машине, вычисление значений /BА1/, w) по /(Al/, w) и, наконец, f(V, w) no f(V—А\/, w) нетрудно осуществить с помощью той же
288 ОПТИМАЛЬНЫЕ ТРАЕКТОРИИ [ГЛ. VI самой программы. Заметим, чю на каждом этапе этих вычис- вычислений для построения следующей таблицы требуется только предшествующая таблица функций /. Как только таблица вычислена и использована для построения следующей, она может быть отпечатана выходным устройством вычислитель- вычислительной машины и изъята из памяти. Следовательно, требуемая емкость памяти машины определяется числом дискретных точек, выбранных для таблицы w, и не зависит о г шага сетки по Д V. Полное время счета обратно пропорционально величине шага ДУ. При выполнении обратной итерации по уравнению F.28) известны горизонтальная скорость и высота, получаемые при оптимальной политике для определенных начальных условий. Начальная политика для точки старта также определяется природой вычислений f(V, w). Для того чтобы восстановить оптимальную траекторию во всей ее полноте, теперь определяется новое значение w с помощью предписанного решения для первого интервала Д V. При вычислении f{V—ДУ, w) для этого значения w определяется и записывается оптимальное решение (так как действительное w может не быть одной из точек сетки w, то иногда оказывается необходимой интерполяция). Это реше- решение используется далее на интервале от У—А У до У—2Д1/. Таким способом мы используем результаты вычислений в по- порядке, обратном тому, в котором они были получены. При- Приведенная выше операция может быть легко осуществлена с помощью вычислительной машины как конечный этап вы- вычислений, если набор таблиц записан на магнитной ленте или на перфокартах. Как только задача решена, проверяется значение конеч- конечной высоты для того, чтобы определить, достигнут ли тре- требуемый уровень. Затем вычисляется новое значение множите- множителя Лагранжа \ на основании предшествующего значения и полученных результатов и все вычисления повторяются. Вычисления дают оптимальную траекторию, выраженную через горизонтальную скорость и \ (высоту) для широкого диапазона начальных значений вертикальной компоненты ско- скорости. Это множество результатов представляет интерес в задачах, где начальное значение вертикальной скорости не обязательно задано и желательно получить ответы для некоторого диапазона значений.
17] ЧИСЛЕННЫЕ РЕЗУЛЬТАТЫ 289 Во-вторых, после ряда изменений л оказываются извест- известными оптимальные траектории для различных высот, что дает интересную оценку компромиссного выбора между высотой и скоростью на оптимальных траекториях. 17. ЧИСЛЕННЫЕ РЕЗУЛЬТАТЫ При всех вычислениях мы рассматривали гипотетическую ракету со следующими характеристиками: вес пустой раке- ракеты Ме = 6000 фунтов; скорость истечения с = 11 000 фут/сек; максимальная тяга Ятах=300 000 фунтов, минимальная тяга при включенном двигателе Pmin = 50 000 фунтов, полная иде- идеально возможная скорость 30 000 фут/сек. Эти данные подразумевают, что полный вес на старте равен 76 456 фушов. Значение X = 0,00142 приводит к окон- окончательной высоте, равной приблизительно 450 миль с гори- горизонтальной скоростью на этой высоте, равной 26 300 фут/сек. Были приняты следующие значения различных параметров и шагов сетки, требуемых для численного решения: 1) Д V/= 1000. Следовательно, рекуррентное соотношение итерировалось 30 раз. 2) А ад = 50. Каждая таблица для f(V, ад) содержала 281 число, так как диапазон изменения w был принят от 0 до 14 000. 3) Дер = 0,01 радиана. Диапазон изменения углов тя- тяги @, тг/2) радиан. 4) Тяга могла принимать значения 300 000, 250 000, 200 000, 150 000, 100 000 или 50 000. Эти числа были определены экспериментально. Они об- обладают тем свойством, что дальнейшее изменение сетки оказы- оказывает малое или вообще незаметнее влияние на вычисляемое решение. Сжатая сводка результатов решения, осуществленного на машине РАНД Джонниак за 20 минут, дана в таблице 6.1. Необходимо отметить, что, хотя при таком упрощенном изучении обнаруживается, что ракета должна лететь на мак- максимальной тяге вплоть до полного выгорания топлива, а на- направление тяги должно изменяться по простому закону, сама вычислительная схема не строилась в предположении этих ре- результатов. Она, следовательно, приложима и для более общих 10 Р. Беллман, С. Дрейфус
290 ОПТИМАЛЬНЫЕ ТРАЕКТОРИИ [ГЛ. VI задач, решение которых недоступно для обычного математи- математического анализа. Таблица 6.1 V (тыс. фут /сек) 30 25 20 15 10 5 Выгорание топлива Конец подъема Вес (фунт) 76 456 48 529 30 803 19 552 12410 7 877 5 000 5 000 h {фут) 0 16 045 57 720 106 344 152 954 192 848 224 920 2 337 679 W (фут/ сек) 0 1514 3 306 5 259 7 330 9 464 11 650 0 и {фут/ сек) 0 4 279 8 625 13 020 17 436 21 871 26 313 26 313 (рад) 0,560 0,523 0,501 0,496 0,480 0,480 0,472 0 Р (ТЫС. фун- фунтов) 300 300 300 300 300 300 300 0 Время {сек) 0 33,3 54,4 67,8 76,3 81,7 85,1 444,7 Интересно отметить точность этих вычислений путем сравнения отклонений tg <p от выведенного выше оптимального линейного закона. С помощью метода наименьших квадратов мы прибли- приблизим зависимость tg <р, полученную выше, линейной tgcp(^) = s=a + ffc, где a = 0,623945 и р = —0,001336, и построим таблицу 6. 2. Таблица 6.2 0 33,3 54,4 67,8 76,3 81,7 85,1 <р U) 0,560 0,523 0,503 0,490 0,480 0,480 0,472 tg <р @ 0,6269 0,5795 0,5476 0,5334 0,5206 0,5206 0,5093 tg <р @ 0,6239 0,5795 0,5513 0,5334 0,5220 0,5148 0,5103 0,0030 0,0029 0,0037 0,0000 0,0044 0,0058 0,0010 18. БЛОК-СХЕМА Программа вычислений показана в виде диаграммы на рис. 74.
18] БЛОК-СХЕМА 291 О-У o^w~Y- o-« 1 ¦*—-XI Hem /3-х Р+ДР--Р I /-^/77 \Да y 0-d y Hemx Перекос бляха Рис. 74. tfe/я ^/ 10*
292 оптимальные траектории [гл. vi 19. НОВОЕ ПОНЯТИЕ УПРАВЛЕНИЯ Понятие параметров состояния в динамическом програм- программировании естественно приводит к новому подходу в пило- пилотировании и в управлении с обратной связью вообще. При старом вариационном подходе для любой данной задачи целью является определение уравнения наилучшей траектории. Естественно, что это приводит к идее пилоти- пилотирования, основанной на предварительном вычислении жела- желаемой траектории и настройке навигационного вычислитель- вычислительного устройства на эту траекторию. Если снаряд отклонится от траектории под действием непредвиденных сил или мелких неисправностей, механизм обратной связи почувствует эго отклонение и попытается вернуть снаряд на предписанный путь. Использование та- такого устройства приводит к трудностям, связанным с обес- обеспечением устойчивости, а иногда с действительной опас- опасностью увеличения колебаний вследствие перерегулирования. Все эти трудности автоматически устраняются введением параметров состояния. Как только ракета отклонилась, опти- оптимальной будет уже не вычисленная ранее траектория, а но- новая, определяемая новым состоянием ракеты. Любая попытка вернуть ракету на прежнюю траекторию не только трудно выполнима, но и в действительности, вообще говоря, неоп- неоптимальна. Истинная информация, необходимая для выполне- выполнения оптимальных действий, — оптимальное решение как функ- функция всех возможных мыслимых состояний системы, — опреде- определяется при вычислениях по методу динамического програм- программирования. Введение этой информации в систему пилотирования позволит найти легко осуществимые с летной точки зрения истинно оптимальные траектории. Проблема технической ре- реализации этой идеи еще мало изучена. 20. МНОГОСТУПЕНЧАТЫЕ РАКЕТЫ Здесь мы будем рассматривать совершенно иной тип мно- многошаговых задач, выдвинутых космическим веком. Само наи- наименование показывает, что к проблемам, касающимся опти- оптимального построения многоступенчатых ракет, удобно подойти с позиций динамического программирования. Для того чтобы проиллюстрировать приложимость этой методики, выберем следующую задачу.
22] формулировка 293 21. ЗАДАЧА ОБ ОПТИМАЛЬНОМ РАЗДЕЛЕНИИ Рассмотрим задачу об определении надлежащего числа и размеров двигательных ступеней, возникающую при проек- проектировании ракет. Как известно читателю любой нынешней ежедневной газеты, современные ракеты-носители спутников и космические корабли строятся из нескольких секций с го- горючим. После того как топливо, содержащееся в секции, израсходуется, корпус секции отделяется, для того чтобы уменьшить общий вес. В идеале было бы желательно иметь бесконечно ступенчатую ракету, вся излишняя часть оболоч- оболочки которой непрерывно бы отпадала по мере расходования топлива. Однако это приводит к бесконечно большому ко- количеству измерительной и управляющей аппаратуры, а сле- следовательно, к весьма высокой вероятности неисправностей. Согласимся, что желательно использовать разумно малое число ступеней. Тогда встает вопрос о размещении топлива в них. Таков упрощенный вариант задачи, которую мы бу- будем здесь рассматривать. Мы попытаемся определи!ь количество топлива, которое должно быть помещено в каждую из ступеней ^-ступенчатой ракеты, для того чтобы придать носовому конусу и полез- полезной нагрузке заданную конечную скорость. При этом рас- распределение надо осуществить так, чтобы минимизировать полное количество топлива, т. е. начальный вес. Мы хотим решить эту задачу для fe-ступенчатой ракеты, где k принимает значения 1, 2, 3, ..., N. Весь этот ряд за- задач может быть решен за один цикл вычислений при дина- динамическом программировании. Выбор оптимального k может быть осуществлен на базе компромисса между весом и надежностью. 22. ФОРМУЛИРОВКА Мы желаем минимизировать вес, необходимый для дости- достижения заданной скорости, в предположении, что траектория известна. Одной из переменных, необходимых для описания состояния ракеты в начале этапа, является достигнутая ско- скорость или, что эквивалентно, остающаяся доля скорости, ко- которая должна быть достигнута с помощью последующих ступеней.
294 оптимальные траектории [гл. vi Необходимо также знать вес ракеты для того, чтобы рас- рассчитать работу в течение данного этапа. Все другие данные, необходимые для вычисления функционирования в течение этапа, предполагаются заранее известными, независимыми от вычисляемой конфигурации ракеты. Так как критерием опти- оптимизации является минимум веса, необходимого для достиже- достижения конечной скорости, а оптимальный вес ракеты при дан- данной скорости есть именно тот, который необходим для дос- достижения конечной скорости, то значение оптимизируемой функции (т. е. веса) на данном этапе и значение переменной состояния (т. е. скорости) определяют функционирование в течение этапа. Переходя к аналитической формулировке, определим fk(v) как минимальный вес Аг-ступенчатой ракеты, достигающей конечной скорости v. F.29) Теперь, если vk есть еще не найденная скорость, которая добавится за время действия k-й ступени, а функция w[vk, fk_i(v — vk)\ есть добавочный вес топлива и корпуса, необходимый для обеспечения этого приращения, то в силу принципа оптимальности имеет место рекуррентное соотношение fk (v) = min {w [vkjk_x (v - vk)] +Л_! (v - vk)}. F.30) Природа функции w является единственным выражением особенностей этой задачи. Нигде до этого момента мы не встречались с ситуацией, когда в одношаговой части рекур- рекуррентного соотношения появляется зависимость от оптималь- оптимальной для (k— 1)-шагового процесса функции. То, что это не приводит к каким-либо дополнительным трудностям, может быть легко обосновано читателем при осуществлении вычис- вычислительного алгоритма, столь часто используемого в этой книге. Численные результаты, полученные таким путем* при- приведены в работах, указанных в конце главы. 23. ЗАДАЧИ БОЛЕЕ ВЫСОКОЙ РАЗМЕРНОСТИ Как мог заметить читатель, все иллюстративные задачи, собранные в этой главе, являются задачами с малой размер- размерностью, поскольку они связаны с динамическим программиро- программированием. Задача о наборе высоты самолетом за минимальное
24] ЗАДАЧА О ПУТЕШЕСТВИЯХ 295 время, рассмотренная в § 4, привела к быстрому и легко про- программируемому способу грубой аппроксимации оптимальной траектории. Хотя это и является желаемым результатом, хо- хотелось бы также иметь возможность вычислять решения для задач, включающих значительно большее число реальных фак- факторов, подобных тем, которые были включены в формули- формулировку, приведенную в § 9. Для осуществления этой программы необходимы большие и более быстродействующие вычислительные машины, допол- дополнительное время и усилия. Сходное положение имеет место и для задач о ракетах и межпланетных космических полетах. Некоторые способы понижения размерности, например введе- введение множителей Лагранжа, уже были изложены. В то же время для «усмирения» неподатливых траекторных задач не- необходимы и другие аналитические построения. Некоторые методы—«кандидаты в укротители проблемы» будут рас- рассмотрены в параграфах главы XII, посвященных численному анализу. Задачи могут быть обобщены не только посредством увеличения размерности. Так, в математическую модель мо- могут, и часто должны быть, введены элементы случайности. Наконец, должны быть рассмотрены модели приспособления адаптации, где система обучается в окружающей ее среде и оптимально приспосабливается к ней. Мы будем обсуждать эти вопросы в главе об управлении с обратной связью (глава IX). 24. ЗАДАЧА О ПУТЕШЕСТВИЯХ В качестве дальнейшего примера приложения этих идей рассмотрим следующую задачу о путешествиях, которая воз- возникает в самых разнообразных прикладных вопросах. Предположим, что имеются N городов, занумерованных индексом /=1, 2, ..., N в некотором порядке, и задан ряд чисел i-lh где ty—время, потребное на путешествие из /-го города в у'-й. F.31) Начав с первого города, мы хотим провести путь в TV-й, который потребует минимального времени. Мы можем идти прямо или заходить по пути в любой другой город. В тех случаях, когда между некоторыми городами не име- имеется никакой связи, мы будем считать соответствующее ty
296 оптимальные траектории [гл. vi бесконечным или, при использовании цифровых вычисли- вычислительных машин, очень большим положительным числом. Если N велико, то любое решение путем простого перебора невозможно. Попытаемся решить задачу с помощью метода функциональных уравнений. Рассмотрим общую задачу об определении минимального времени, потребного для пере- перехода из 1-го города в TV-й. Пусть //— время, потребное для путешествия из /-го в N-H город при использовании оптимальной политики. Тогда те же самые доводы, которые мы использовали при рассмотрении предшествующей траекторной задачи, приве- приведут к соотношению \ F.32) Легко можно показать, что эта система уравнений имеет единственное решение, а следовательно, что решение этого ряда задач эквивалентно решению исходной задачи. 25. ВЫЧИСЛИТЕЛЬНЫЕ АСПЕКТЫ Уравнение F.32) обладает особенностью, которая ранее не встречалась; именно здесь неизвестная функция появ- появляется и в левой и в правой частях уравнения. Следовательно, мы не имеем готовой итерационной схемы для его решения. Необходимо использовать какой-либо метод последо- последовательных приближений. Мы могли бы, например, положить @) @) /, =minttJ; (/=1, 2,..., N—\); fN = 0, (k) (k-\) {k) /. =min[*/y+/y ]; (/ = 1, %...9N—\)\fN=0. F.33) Это приводит к монотонной сходимости снизу. С другой стороны, мы можем мыслить в терминах политик. Рассмот- Рассмотрим сначала те пути, которые ведут прямо из / в N, за- затем те, в которых делается одна остановка, и т. д. Это
26] я-й по краткости путь приводит к следующей схеме: @) @) Si = V> </=!¦ 2,..., tf-1); **=<>, при которой осуществляется монотонная сходимость сверху, причем за конечное число шагов. Метод F.33) оценивает наилучший путь длины k, начи- начинающийся от города /. Однако уравнения имеют то свой- свойство, что N является стоком, и если путь достигает N менее чем за k шагов, то там можно остановиться. Для любого другого города путь не может оборваться ранее k шагов. Следовательно, когда k становится большим, все пути стремятся прийти в город N, а минимизация гарантирует, что они сделают это наилучшим образом. В методе F.34) считается, что каждый город достижим на каждой итерации, но потребное время не обязательно является оптимальным. Последовательные приближения схо- сходятся к наилучшему пути. Этот пример иллюстрирует различие между итерациями в пространстве функций и в пространстве политик (пове- (поведений), рассмотренное в § 44 главы П. Метод F.33) дает при каждой итерации оптимальное решение задачи, отлича- отличающейся от исходной. Метод F. 34), прежде чем осуществит- осуществится сходимость, дает неоптимальное решение исходной задачи. Оба метода пригодны для ручного или машинного счета при умеренных значениях N, т.е. N^ 100, и для машинного счета для N порядка нескольких тысяч. 26. /г-Й ПО КРАТКОСТИ ПУТЬ Иногда бывает интересно определить не только кратчай- кратчайший путь, но и второй по краткости, третий по краткости и т. п. Тем самым мы сможем оценить, насколько важно ис- использовать наикратчайший путь по сравнению, скажем, с деся- десятым по краткости. Для того чтобы проиллюстрировать ме- метод, введем последовательность величин Vi, равных времени, потребному на переход от i к /V, F.35) при использовании второго по краткости пути, i l2tfl
2?8 оптимальные траектории [гл. vi Для получения соотношений для v{ заметим, что если первая остановка на пути из i в N делается в у, то продол- продолжение движения из j в N должно происходить либо по пути, который минимизирует время путешествия от у к /V, либо по пути, который является вторым по краткости для перехода из у в N Пусть minj Vi есть абсолютный минимум v-t (i==l, 2,..., N), F.36) m\n2Vi есть вторая \ю малости величина г;;. Тогда мы имеем уравнение Vi = min {miri! (ty -f- vj)\ min2 (ty ~\-fj)}\ (I = 1, 2,..., N— 1); *V=0> F.37) a fj определены в § 24. Аналогичные, но несколько более громоздкие уравнения можно вывести для /г-го по краткости пути. 27. ЗАКЛЮЧЕНИЕ Целью этой главы было продемонстрировать чи га гелю, что большое число классов задач об оптимальных траекто- траекториях может быть быстро и точно решено численно с по- помощью метода динамического программирования. Преимущество подхода с помощью динамического про- программирования заключается в том, что реалистические урав- уравнения движения и реалистические ограничения легко учесть при решении функциональных уравнений. Основной трудностью, которую мы должны преодолеть, является размерность. К проблеме о том, как обращаться с функциями нескольких переменных, мы еще будем возвра- возвращаться. КОММЕНТАРИИ И БИБЛИОГРАФИЯ § 1. Применению вариационного исчисления к траекторным за- задачам были посвящены разносторонние исследования. Рассмотрение некоторых результатов, а также ссылки на многие другие статьи см. в работах: J. V. В г е a k w е 11, The optimization of trajectories, J. Soc. Indust. Appl. Math., vol. 7, 1959.
КОММЕНТАРИИ И БИБЛИОГРАФИЯ 299 Н J К е 11 с у Gradient theory of optimal flight paths, Amer. Rocket Soc/ J., vol. 30, I960. * §§ 2— 8. Представленные здесь результаты первоначально из- изложены в работе: S. С а г t a i n о and S. Dreyfus, Application of dynamic programming to the airplane minimum time-to-climb problem, Aero. Eng. Rev., 1957. § 10. Задача была рассмотрена в работе: Д. Е. О х о ц и м с к и й, Т. М. Энеев, Некоторые вариацион- вариационные задачи, связанные с запуском искусственного спутника Земли, УФН, т. LXIII, вып. 1, 1957/ с использованием вариационных методов и в работе R. Bellman, Dreyfus, An application of dynamic prog- programming to the determination of optimal satellite trajectories, J. British Interplanetary Soc, vol. 17, 1959—1960, pp. 78—83, с использованием динамического программирования. См. также F. Т. Smith, The Optimization of Multistage Orbit Transfer Processes by Dynamic Programming, The RAND Corporation, Paper P-2177, 1961. P. I. Welding and J. Stringer, A problem in vehicle fuel consumption, Oper. Res. Q., vol. 11, 1960, pp. 197—204. R. В e 11 m a n, S. Dreyfus and R. К a 1 a b a, Application of Dynamic Programming to Space Guidance, Satellites and Tra- Trajectories, The RAND Corporation, Paper P-1923, 1960. J. N. Franklin, The range of a fleet of aircraft, J. Soc. In- dust. Appl. Math., vol. 8, 1960, pp. 541—548. S. E. Dreyfus, The analysis and solution of optimum trajec- trajectory problems, Symposium on Mathematical Optimization Tech- Techniques; Santa Monica, California, 1960. Другой подход изложен в А. Е. В г у s о n, W. F. Denham, F. J. С а г г о 11 and К. М i- k a m i, Determination of the Lift or Drag Program that Minimi- Minimizes Reentry Heating with Acceleration or Range Constraints Using a Steepest Descent Computation Procedure (готовится к печати). По поводу использования леммы Неймана — Пирсона и распро- распространения ее для решения вариационных задач с ограничениями см. R. Bellman, I. Glicksberg and О. Gross, Some As- Aspects of the Mathematical Theory of Control Processes, The RAND Corporation, Report R-313, 1958 [русский перевод: P. Беллман, И. Г л и к с б е р г, О. Гросс, Некоторые воп- вопросы математической теории управления, ИЛ, 1961]. G. Goertzel, Minimum critical mass and flat flux, J. Nuc- Nuclear Energy, vol. 2, 1956, pp. 193-201.
ЗСО ОПТИМАЛЬНЫЕ ТРАЕКТОРИЙ [гл. VI §§ 20—22. Эти результаты получены Тен-Дайком. См. R. Р. Т е п - D у k е, Computation of rocket step weights to minimize initial gross weights, Jet Propulsion, vol. 28, 1958, pp. 338—340. § 24. Изложение основывается на работе: R. Bellman, A routing problem, Q. Appl. Math., vol. 16, 1958, pp. 87—90. См. также R. E. Greenwood, Linear graphs and matrices, Texas J. Science, vol. 12, 1960, pp. 105—108. Возможны и многие другие подходы к решению этой ф>нда- ментальной проблемы. Дальнейшие ссылки и обобщения, а также иные методы даны в R. К а 1 a b a, On some communication network problems, com- combinatorial analysis, Proc. Symposium in Applied Mathematics, American Math. Soc, vol. 10. 1960. M. Pollack, The maximum capacity route through a network, Operations Research, vol. 8, 1960, pp. 733—736. M. P о 1 1 а с k and N. Wiebenson, Solutions of the shortest route problems — a review, Operations Research, vol. 8, 1960, pp. 224—230. Рассмотрение близких задач с помощью линейного программи- программирования см. в L. R. Ford, Jr. and D. R. Fulkerson, Maximal flow through a network, Canadian J. Math., vol. 8, 1956, pp. 399—404. § 26. Более детальное рассмотрение можно найти в работе: R. Bellman and R. К а 1 a b a, On k-Xh best policies, J. Soc. Indust. Appl. Math., vol. 8, 1960, pp. 582—588, и в работе Р. Калаба, указанной в ссылке к § 24. Некоторые совершенно иные идеи развиваются в J. Beardwood, J. H. Halton and J. M. H a m m e r s 1 e у, The shortest path through many points, Proc. Cambridge Phil. Soc, vol. 55, 1959, pp. 299—327! ДОПОЛНИТЕЛЬНАЯ ЛИТЕРАТУРА Проблеме построения оптимальных траекторий посвящена ог- огромная литература. Одна из первых важных работ в этом направ- направлении отражена в статье: Д. Е. Охоцимский, К теории движения ракет, Прикладная йатематика и механика, т. X, в. 2, 1946, 251—272.
КОММЕНТАРИИ И БИБЛИОГРАФИЯ 301 Ряд задач рассмотрен в книге: Л. С. Понтрягин, В. Г. Б о л т я н с к и й, Р. В. Г а м к р е л и- дзе, Е. Ф. Мищенко, Математическая теория оптимальных про- процессов, Физматгиз, 1961. Можно также указать несколько работ последнего времени, где можно найти и дальнейшие ссылки: В. К. И с а е в, Принцип максимума Л. С. Понтрягина и оптималь- оптимальное управление тяги ракет, Автоматика и телемеханика, № 8, 1961. Г. Лейтманн, О максимальной длине полета ракеты в гори- горизонтальной плоскости, Прикладная математика и механика, в. 3, 1963. G. L e i t m a n n, On a class of variational Problems in Rocket Flight, Journ. of Aero-space sci., № 9, 1959, A. M i e 1 e, General Variational Theory of the Flight Path of Ro- Rocket Powered Aircraft, Missiles and Satellite Carriers, Aero- Aeronaut. Acta, № 4, 1958.
ГЛАВА VII МНОГОШАГОВЫЕ ПРОИЗВОДСТВЕННЫЕ ПРОЦЕССЫ, ИСПОЛЬЗУЮЩИЕ ПРОМЫШЛЕННЫЕ КОМПЛЕКСЫ 1. ВВЕДЕНИЕ Эффективное использование комплекса взаимозависимых отраслей представляет собой исключительно важную задачу в области экономики и промышленности. Очевидно, что при любом реалистическом ее рассмотрении мы столкнемся с трудно преодолимыми препятствиями. Прежде чем думать об оптимизации, нам придется столкнуться с точным коли- количественным описанием возникающих процессов, с определе- определением критериев, с необходимостью учета стохастических явлений и приспособления и с нахождением допустимых, а не оптимальных политик. Здесь мы ставим весьма скромную задачу—изучить упрощенные модели многошаговых производственных про- процессов. Цель наша состоит в том, чтобы показать, как мето- методика функциональных уравнений позволяет получить вычи- вычислительную основу для решения ряда задач, которые сохра- сохраняют некоторые особенности реальных экономических проблем. Наша, по видимости специализированная, математи- математическая модель достойна внимания, так как тождественные аналитические вопросы возникают во многих областях, на- например в лесоводстве, при исследовании производства и хранения марганца, на многих стадиях химической техноло- технологии. В качестве примеров последней группы рассмотрим
2] ДВУХОТРЛСЛЕВОЙ ЭКОНОМИЧЕСКИЙ КОМПЛЕКС 303 задачи разделения изотопов, замены катализатора, а также другие задачи химического производства. Мы очень кратко укажем некоторые связи между пред- представленными здесь результатами и макроэкономической теорией фон Неймана, примыкающей к теории игр и ли- линейному программированию. Дальнейшие результаты можно найти в работах, ссылки на которые даны в конце главы. Часто процессы рассматриваемого здесь типа носят наз- название задач на узкие места, так как свойства всего про- процесса определяются ресурсами или производственными мощ- мощностями, имеющимися в наименьшем количестве. 2. ДВУХОТРАСЛЕВОЙ ЭКОНОМИЧЕСКИЙ КОМПЛЕКС Допустим, что мы исследуем работу двухотраслевого комплекса, состоящего из автомобильной и сталелитейной промышленности. Хогя эти названия не должны приниматься всерьез, но, используя привычные понятия и опираясь на оп- определенные интуитивные представления, мы можем надеять- надеяться получить ключ к численному и аналитическому решениям. С другой стороны, получаемые нами решения можно использовать для обеспечения некоторой интуитивной основы при решении еще более сложных моделей. Одной из при- причин того, чго стоит тратить время на рассмотрение этих сверхупрощенных моделей в некоторых подробностях, явля- является надежда на известное прояснение структуры решения более общих задач эгой природы. Мы будем предполагать, используя идею сосредоточенных параметров, которая играет такую существенную роль в математической физике, что состояние каждой отрасли в лю- любой отдельный момент времени может быть определено двумя величинами: (a) запасы сырья, необходимого для производства, J (b) производственная мощность отрасли по изготовле- > G. 1) нию своего продукта. j Чтобы упростить формулировку и вычисления в этом частном случае, мы будем предполагать, что мощности автомобильной промышленности неограниченно велики. Ко- Короче, производство автомобилей будет зависеть только от количества отведенной на это сталц.
304 МНОГОШАГОВЫЕ ПРОИЗВОДСТВЕННЫЕ ПРОЦЕССЫ [ГЛ. VII В любой отдельный момент времени сталь из общих за- запасов стали может быть использована с любой из трех целей: • (а) произвести дополнительную сталь, используя ) существующую мощность сталелитейной промыш- промышленности, (b) увеличить существующую мощность сталелитейной промышленности, (c) произвести автомобили, используя существующую мощность автомобильной промышленности. G.2) Мы хотим определить политику распределения ресурсов, которая максимизирует общее количество автомобилей, про- произведенных за данный период времени. 3. МАТЕМАТИЧЕСКАЯ МОДЕЛЬ В данной задаче процесс будет предполагаться дискрет- дискретным; распределение ресурсов производится только в мо- моменты времени t = 0, 1, ..., Т—1. В любой отдельный момент времени t = n состояние системы определяется вели- величинами: (а) •*"$('*) —количество стали на складах, в. ) v • (Ь) А*т (п) — мощность сталелитейных заводов. При определении распределения стали, имеющейся в рас- распоряжении на шаге пу мы вводим величины: (a) zs (л) —количество стали, используемой ^ для производства дополнительной стали, I (b) zm (п) — количество стали, используемой | для увеличения мощности сталелитейной [G.4) промышленности, j (c) za (п) —количество стали, используемой | для производства автомобилей, ) Мы имеем соотношение *s in) = zs (/i) + zm (/i) + za (/i). G.5) Чтобы отразить некоторые черты реальных процессов, мы налагаем два ограничения на величины z: (a) га(п)^аух5(п), 0<а1<1, ) (b) *,(*)< **(*)• /
4] обсуждение 305 Первое ограничение утверждает, что для производства авюмобилей можно использовать не более определенного количества процентов имеющейся в распоряжении стали на любом шаге от п до я-}-1> в ю время как второе утверж- утверждает, что нельзя разместить на сталелитейных заводах боль- больше стали, чем максимальная мощность заводов. Мы выберем единицы измерения так, чтобы количество авюмобилей, произведенных на шаге (п, л-4-1), было равно za (п). Далее, количество стали, произведенной на шаге (л, п ~-j- -j- 1), пропорционально zs(n), и рост мощности сталели- сталелитейной промышленное^ пропорционален zm(n). Пусть со- соответствующие коэффициен ты пропорциональности равны а> и аА. Таким образом, мы предполагаем, что имеем линейную модель производства. Аналитически это выражается в виде xs(n+\) = a^zs(п), а.2> 1, xs@) = сь xm(n~-l) = xm(n) + a,zm(n), a3>0, хт@) = с% Требуется выбрать величины zs(n), za(n) и zm(n)> n = = 0, 1,. . ., Т— 1, так, чтобы максимизировать общее коли- количество автомобилей, произведенных за время Г-шагового процесса. 4. ОБСУЖДЕНИЕ Аналитическое решение подобных задач усложняется двумя факторами: линейностью и наличием ограничений. Тем не менее обширное множество вариационных задач может быть решено в явном виде. Непрерывный вариант этой вариационной задачи состоит в нахождении вектора уу максимизирующего скалярное про- произведение (х(Т), а), причем х и у связаны дифференциальным уравнением _^L = Ax + Byt *@) = C G.8) и ограничением вида Cy^Dx. G.9) Эти задачи не могут решаться классическими методами ва- вариационного исчисления. Работы, содержащие аналитическое
306 МНОГОШАГОВЫЕ ПРОИЗВОДСТВЕННЫЕ ПРОЦЕССЫ [ГЛ. VII решение большого числа задач этого типа, перечислены в конце этой главы. Переходя к получению численного решения, мы ясно видим, что дискретная задача может быгь сформулирована как задача линейного программирования. Мы должны максимизировать линейную форму т-\ ^ G.10) при ограничениях G.5), G.6) и G.7). Чтобы исследовать выполнимость решения в этом направ- направлении, подсчитаем переменные, предполагая, что нас инте- интересует 30-шаговый процесс. С тремя дополнительными неиз- неизвестными, вводимыми на каждом шаге, мы получаем задачу, включающую 90 переменных, связанных 120 соотношениями. Эта задача хоть и не огромного, но тем не менее поря- порядочного размера. Если же мы хотим определить зависи- зависимость решения от сх и с% (первоначальных запасов стали и первоначальной мощности заводов), то прямой метод этого типа может потребовать совершенно немыслимого времени. Мы хотим вместо этого представить численный метод, который автоматически дает зависимость решения от cv и с2. 5. ИСПОЛЬЗОВАНИЕ ДИНАМИЧЕСКОГО ПРОГРАММИРОВАНИЯ Определим для N=1,2,...; cl^0; с2^>0 функцию /n (ci» са)> РавнУю суммарному выпуску автомобилей за N этапов, причем первоначальный запас стали равен cv первоначальная заводская мощность равна с2 и используется оптимальная политика. G.11) Мы имеем: Л (*!,<*) = <*!'!. G.12) и вообще fN (си с») = max [za +/л_, (о» zs, c2 -J- а, гт)\ G.13)
ИСС ЛЕЛОВЛНИБ ВЕРШИН 307 для N=2, 3, ..., где максимизация происходит по обла- области в г-пространстве, определенной неравенствами (а) га, zs, zm^0, (b) (с) 00 G.14) В следующем разделе мы рассмотрим численное опреде- определение последовательности {fN{cx, с2)}. 6. ИССЛЕДОВАНИЕ ВЕРШИН Область в пространстве переменных (za, zs, zm), опреде- определенная неравенствами G.14), имеет форму, показанную на рис. 75. Вершины, перенумерованные на рис. 75, имеют сле- следующее значение в рамках нашего процесса: 1. В случае, если заводская мощность не вносит огра- ограничений, вся имеющаяся в распоряжении сталь направля- направляется на производство но- га вой стали. 2. Направить макси- максимально возможное ко- количество стали на произ- производство стали; с га ль, ос- оставшуюся после удовле- удовлетворения заводских мощ- мощностей, направить на расширение этих мощ- мощностей. 3. Допустимая часть запасов стали предна- предназначается на производство производство стали. 4. Случай, когда заводские мощности недостаточны для обработки всей имеющейся в распоряжении стали. Эта вершина изображает распределение стали для сталелитей- сталелитейного производства до предела заводских мощностей, распре- распределение ее в автомобильном производстве вплоть до допу- допустимой доли и назначение оставшейся стали на расширение заводских мощностей. Рис. 75. Область изменения величин автомобилей, остаток — на
308 МНОГОШАГОВЫЕ ПРОИЗВОДСТВЕННЫЕ ПРОЦЕССЫ [ГЛ. VTI 5. Направить максимально возможное количество стали на производство стали, а остаток — на производство автомо- автомобилей. 6. Направить все текущие запасы стали на расширение заводских мощностей. 7. Производить максимально возможное количество автомо- автомобилей, а с оставшейся сталью расширять заводские мощности. Очевидно, что все эти условия не встречаются сразу, а зависят от производственных мощностей и запасов стали, которые изменяются в течение процесса. Из этой семерки только первые пять случаев представля- представляют реальную возможность, так как вершины 6 и 7 заканчи- заканчивают процесс — новая сталь не производится. Можно показать, что максимизация по вершинам области дает либо оптимум, либо очень хорошее приближение по мере произвольного возрастания числа шагов. Здесь, так как нас прежде всего интересует указание общего подхода к за- задачам такого типа, мы будем считать максимизацию по вер- вершинам точной. Во всяком случае вычисление этого типа дает полезное приближение в пространстве политик. Если бы мы хотели идти с самого началау не имея ника- никаких предвзятых суждений о положении максимума, мы должны были бы делать следующее. Соотношение G.13) может быть записано в виде fN{сь с%) = max fmin (ax ch cx — zs— zm) + где максимизация теперь происходит по области (a) Zs>Zm^0, (b) *5 + *т<'1. \ GЛ6) (c) zs^c* 7. УМЕНЬШЕНИЕ РАЗМЕРНОСТИ И ДИАПАЗОНА ИЗМЕНЕНИЯ ВЕЛИЧИН Покажем теперь, что мы можем свести задачу к после- последовательности одномерных задач и одновременно ввести «стягивающее» преобразование. Этим мы хотим сказать, что
7] УМЕНЬШЕНИЕ РАЗМЕРНОСТИ ВЕЛИЧИН 309 мы можем гарантировать, что число возможных состояний системы не возрастает на протяжении времени. Прежде всего из линейности всех ограничений и функций производства ясно, что fN(ch c%) является однородной функ- функцией первой степени cv и с2. Следовательно, для сис^^>0 мы имеем: [C^ {^) G.17) Отсюда следует, что нам надо вычислять только fN или fN(xy 1). Возвращаясь к G.13), мы имеем: V_1(a* zs, с* + аъ zm)) = Теперь мы видим, что вычисление fN(\,c2) для с.2^0 зависит только от знания fN_x(^,ci) для с2^0. Это и есть требуемое уменьшение размерности. Однако перед нами еще трудность расширяющегося диапазона для сь так как отно- с* 4- a* zm _, ^ , шение ———±—— может быть mhoVo больше, чем cJcx. а2 zs Чтобы избежать этой трудности, покажем, что мы можем вычислить /дД1, х) и fN(xy 1) для О^д:^ 1, зная fN_] (I, x) и fN_x(x, 1) для O^^^l. Целесообразно ввести две функ- функции вместо одной, чтобы сохранить фиксированным интере- интересующий нас интервал. Возвращаясь к G.18), имеем: тах^ а ^s N x[, (для a2zs ^ Съ -j- a3zm) G.19) (для а2г5 г=? с2 -f- a3zm). Используя это уравнение и учитывая замечания о макси- максимизации по вершинам, мы получим очень простую вычисли- вычислительную схему.
310 МНОГОШАГОВЫЕ ПРОИЗВОДСТВЕННЫЕ ПРОЦЕССЫ [гл. VII 8. ТЕХНИКА ВЫЧИСЛЕНИЙ Упрощения, введенные с помощью преобразований § 7, являются самыми значительными в этом частном исследова- исследовании. Что касается программирования, то тем самым полу- получаются следующие результаты: (а) сокращение времени и объе- объема памяти с Г2 до 27 *) и (Ь) дальнейшее значительное сокращение, вызываемое устранением расширяющейся сетки. Разовьем подробно эти два пункта. Обычно, чтобы выра- выразить все возможные состояния системы, определенной двумя независимыми параметрами (здесь сх — запасы стали и с*2 — заводская мощность), необходимо построить сетку значений fN(ci>cd B пространстве (с1; ^), а затем интерполировать по этой двумерной области, чтобы определить fN (c[y t\), т. е. количество стали, предназначенной для производства автомобилей в течение процесса, состоящего из TV шагов, в котором первоначальные значения равны с[ и с'а, где с[, с[2 не являются точкой сетки. Эта функция необходима для последующего вычисления функций fN,] {сь с,г). Если интер- интервалы [0, q] и [0, с%] разделены на п частей этой сеткой, мы должны вычислить и запомнить для дальнейшего использова- использования п2 значений fN(cltc2). Потребность во времени стано- становится даже более серьезной из-за дополнительных логиче- логических операций, необходимых при рассмотрении двумерной системы. Вот чем объясняется экономия, проистекающая из сведения к одномерной форме. Возможность расширения сетки является серьезным пре- препятствием в некоторых процессах динамического программи- программирования. Говоря нематематически, ситуация такова: чтобы рассчитать условия в момент времени t} мы должны знать заранее все возможные состояния, которые могли бы суще- существовать в момент времени t—1. В нашем конкретном при- приложении, чтобы определить количество автомобилей, произ- произведенных за TV периодов, мы должны знать их количество за N— 1 периодов для всех допустимых запасов стали и мощностей. Но после одного периода производства запасы или мощность (либо то и другое) могут возрасти. Поэтому для вычисления fN(ch c2) необходима величина fN_x(c'vc% *) Речь идет о характере зависимости этих характеристик от числа шагов. {Прим. ред.)
ТЕХНИКА ВЫЧИСЛЕНИЙ 811 Да$ 7 -+V 0-za za + ^_7 (a2 zs, c2 Да f N- v'- • До 1 i N ^M? \He/ C2-~ZS 0-zn C7 — C2~* 7a Да \ /Чет Hem \7Jem Рис. 76.
312 МНОГОШАГОВЫЕ ПРОИЗВОДСТВЕННЫЕ ПРОЦЕССЫ [гл. VII где с\ может быть больше сх и аналогично с\ больше с\2. Следовательно, область, по которой может быть вычислена fN(cv с2), меньше, чем область, в которой известна fN_ х (с1у с2). Поэтому надо начинать расчеты N-ro шага с рассмотрения большой области, чтобы завершить вычисления с умеренным диапазоном значений cY и сь Методика § 7, обходящая это препятствие, является реальным и значительным прогрессом. Заслуживает внимания одна новая черта этой задачи — оптимизация по трехмерной области. Методы решения общих многомерных задач такого типа мало исследованы. Здесь, конечно, нас спасают природа функций и наши требования о том, что должны быть рассмотрены только вершины об- области. Программа для определения и оценки подходящих вершин изображена схематически на рис. 76. Таблица 7.1 Анализ типичной ситуации на узкие места. Пятнадцатишаговый процесс с параметрами а1=0,2; а2 = 2; а3 = 0,4 и исходными данными cl = \} с2 = 1 Информация, получаемая непосред- CTI этап 1 2 3 4 5 6 7 8 9 10 И '12 13 14 15 *енно при вычислениях нормированное ус- условие (ci, с») в начале этапа A; О A; о,5) A; о,7) A; 0,5857) A; 0,642) A; 0,611) A; 0,626) A; 0,620) A; 0,588) A; 0,586) A; 0,573) A; 0,579) A; 0,576) A; 0,577) A; 0,577) вер- вершина 1 2 2 2 2 2 2 4 4 4 4 4 4 4 4 Фактические условия при использовании оп- оптимальной ПОЛИТИКИ фактическое условие в на- начале этапа A; 1) B; 1) B; 1,4) B,8; 1,64) C,28; 2,096) D,192; 2,57) . E,14; 3,22) F,44; 3,988) G,976; 4,4536) (8,9072; 5,2196) A0,4392; 5,9817) A1,9634; 6,9268) A3,8536; 7,9797) A5,9594; 9,2086) A8,4172; 10,6226) Суммарное распределение в автомобильной промышленности сталь, распре- распределенная в автопромыш- автопромышленности 0 0 0 0 0 0 0 1.288 1,595 1,781 2,008 2,393 2,771 3,192 3,683 18,853
9] СТАЦИОНАРНЫЙ РОСТ 813 Остальная часть программы касается вычисления таблицы значений fN{cb c.2), блока переноса этой таблицы и ее после- последующего использования при составлении таблицы/^ ,{(с{ус%). Таблица 7.1 представляет собой результат анализа одной типичной ситуации. Вычисления позволяют выбирать оптималь- оптимальным образом вершину на каждом шаге для любого началь- начального условия, а также составлять список выполненных рас- распределений стали в автомобильной промышленности. Чтобы оценить преимущества полученных результатов, был проведен ручной счет, использующий политику, диктуемую вычисли- вычислительной машиной; это выявляет фактический рост системы во времени. Чувствительность процесса была продемонстри- продемонстрирована путем оценивания дохода при политике, неоптималь- неоптимальной только для первого решения. Первоначальный выбор вершины 3 приводит к повсеместному уменьшению произво- производительности на 8 процентов. 9. СТАЦИОНАРНЫЙ РОСТ Возникает вопрос относительно того, укладывается ли комплекс описанного типа в обыкновенную модель роста, в которой запасы, а также мощность равномерно возрастают во времени. Если так, то мы могли бы ожидать экспонен- экспоненциального роста. Так, например, рассматривая дифференциальное уравнение в G.8), мы подозреваем асимптотическое поведение вида x^euw, y~euz, G.20) где w и г не зависят от времени. Мы приходим к соотно- соотношениям \w=Aw + Bz \ К } и к задаче определения наибольшего А, для которого выпол- выполняются эти соотношения. Вопросы такой природы являются частью теории линей- линейных неравенств. Они играют важную роль в теории игр и линейном программировании, исследовании вычислительных аспектов линейных неравенств. Задача, поставленная выше, впервые была рассмотрена фон Нейманом в связи с его
314 МНОГОШАГОВЫЕ ПРОИЗВОДСТВЕННЫЕ ПРОЦЕССЫ (>Л. VII исследованием возможности экспоненциально расширяющей- расширяющейся экономики. Каким бы важным ни был вопрос об оптимальном ста- стационарном режиме, проблема подхода к стационарному ре- режиму важнее, так как большинство приложений имеет дело с процессами конечной длительности. В нашем рассмотрении марковских процессов принятия решений мы опять столкнемся с асимптотическим поведением и связью с линейным программированием. Там мы подробно изложим некоторые результаты. КОММЕНТАРИИ И БИБЛИОГРАФИЯ § 1. Читатель, интересующийся дальнейшим рассмотрением задач на узкие места, может обратиться к главам 6 и 7 книги «Динамическое программирование», где представлены более слож- сложные модели и несколько аналитических решений. По приложениям к лесоводству и дальнейшие численные ре- результаты см. Т. Arimizu, Working group matrix in dynamic model of forest management, J. Japanese Forestry Soc, vol. 40, 1958, pp. 185—190. По приложениям к химической технологии см. S. M. Roberts, Dynamic Programming Formulation of the Catalyst Replacement Problem (to appear). R. A r i s, R. Bellman and R. К a 1 a b a, Some optimization problems in chemical engineering, Chem. Engr. Progress Symp. Series, vol. 56, I960, pp. 95—102. R. A r i s, The Optimal Design of Chemical Reactors, Academic Press. Inc., New York, 1961. § 4. Непрерывный вариант симплекс-метода линейного про- программирования, предназначенный для получения решений непре- непрерывных вариационных задач, описанных в этом параграфе, разра- разработан Леманом. См. S. Lehman, On the Continuous Simplex Technique. The RAND Corporation, Research Memorandum RM-1386, 1954. § 5. Эти результаты были даны в работах: R. Bellman, On bottleneck problems and dynamic programming, Proc Nat. Acad. Sci USA, vol. 39, 1953, pp. 947—951. R. Bellman, Bottleneck problems, functional equations, and dynamic programming, Econometrica, vol. 22, No. 4, 1954,
КОММЕНТАРИИ И БИБЛИОГРАФИЯ 315 § 9. Первоначальная работа фон Неймана: J« von Neumann, A model of general economic equilibrium, Review of Economic Studies, vol. 13, 1945—1946, pp. 1—9. Дальнейшие результаты могут быть найдены в М. М о г i s h i m a, Economic expansion and the interest rate in generalized von Neumann models, Econometrica, vol. 28, I960, pp. 352—363. J. G. К e m e n у, О. М о r g e n st e r n, G. L. Thomp- Thompson, A generalization of the von Neumann model of an expanding economy, Econometrica, vol. 24, 1956, pp. 115—135. K. Marx, Capital, C. Kerr and Co., Chicago, Illinois, 1933, vol. II, Chapters 20 and 21. ДОПОЛНИТЕЛЬНАЯ ЛИТЕРАТУРА Исходные положения о построении моделей расширенного воспроизводства даны К. Марксом и В. И. Лениным. К. Маркс, Капитал, т. II, Госполитиздат, 1957, стр. 511 и далее. В. И. Ленин, По поводу так называемого вопроса о рын- рынках, Соч., т. I, изд. 5, стр. 67—122. Дальнейшие результаты можно найти в работах: B. С. Немчинов, Экономико-математические методы и мо- модели, Соцэкгиз, 1962. Л. В. Канторович, Экономический расчет наилучшего использования ресурсов, Изд-во АН СССР, 1959. Математический анализ расширенного воспроизводства (Труды научного совещания о применении математических методов в экономических исследованиях и планировании, т. II), Изд-во АН СССР, 1962. Д. Г е й л, Линейные экономические модели, ИЛ, 1963. Р. А л л е н, Математическая экономия, ИЛ, 1963. C. К а р л и н, Математические методы в теории игр, програм- программировании й экономике, М., Изд-во «Мир», 1964.
ГЛАВА VII! ПРОЦЕССЫ РЕГУЛИРОВАНИЯ С ОБРАТНОЙ СВЯЗЬЮ 1. ВВЕДЕНИЕ В этой и следующих главах мы хотим рассмотреть некото- некоторые приложения динамического программирования к процессам регулирования с обратной связью и к процессам, которые могут быть сведены к таковым. Так же как в главах, где рассматривались траекторные задачи и вариационное исчисле- исчисление, мы посвятим первую из глав ознакомлению и форму- формулировке задач, а следующую — вычислительным аспектам. Как мы неоднократно подчеркивали, и то и другое состав- составляет отдельные, но близко связанные части единой проблемы. Их полное разделение ставит любую попытку решения ре- реальной физической проблемы на слишком невыгодные исход- исходные позиции. Мы начнем рассмотрение с классической задачи регули- регулирования (управления). Содержание этой задачи совершенно отлично от того, что мы в обыденной жизни именуем словом «управление». Далее мы рассмотрим математическую фор- формулировку типичной задачи о регулировании с обратной связью, встречающейся в электронике. Первоначально мы будем затрагивать детерминированные процессы с обычными реальными ограничениями, неаналитическими и неявными функционалами. Затем мы обратимся к более сложным стохастическим процессам регулирования и процессам с при- приспособлением (адаптивным), где будут приведены вычисли- вычислительные результаты, полученные Аоки. Из последующего будет ясно, что аналитические и вы- вычислительные исследования в этой обширной области, полной
2] КЛАССИЧЕСКАЯ ЗАДАЧА РЕГУЛИРОВАНИЯ 317 заманчивых и значительных проблем, только начались. Поэтому очень мало было сделано в направлении строгой формули- формулировки процессов; много еще остается сделать для обоснова- обоснования используемых методов. Как обычно, мы сможем обойти ряд вопросов обоснования, рассматривая только дискретные варианты задач автоматического управления. Попутно мы хотим указать на то, что в этой общей области существует много интересных аналитических проблем. В дополнение к вопросам, касающимся задач об управ- управлении с обратной связью, мы рассмотрим задачу о макси- максимальных отклонениях, возникающую при эксплуатации ядерных реакторов, неявную вариационную задачу детерминированного типа, задачу о релейном управлении и неявные вариационные задачи стохастического типа, которые будут встречаться при ре- решении проблемы «мягкой посадки» на Луну или другие пла- планеты, некоторые задачи о максимальной высоте и максимальной дальности, интересные для баллистики, и, наконец, некоторые процессы передачи сообщений, связанные с теорией инфор- информации. В конце главы приведено большое число ссылок на работы, посвященные другим приложениям. 2.КЛАССИЧЕСКАЯ ЗАДАЧА РЕГУЛИРОВАНИЯ Идея регулирования с обратной связью наиболее часто связывается с регулятором, использованным Уаттом для паровой машины. В действительности она еще старше, так как регулятор, изображенный Гюйгенсом для регулирования часов, был применен для ветряных мельниц и водяных колес до появления паровой машины. Более того, по-видимому, в Китае за несколько тысяч лет до промышленной револю- революции уже использовались методы обратной связи. Тем не менее вплоть до самого последнего времени математические иссле- исследования процессов регулирования концентрировались вокруг относительно узкого понятия устойчивости. Рассмотрим сис- систему, описываемую с помощью линейного дифференциального уравнения п-го порядка с постоянными коэффициентами
318 ПРОЦЕССЫ РЕГУЛИРОВАНИЯ С ОБРАТНОЙ СВЯЗЬЮ [ГЛ. VIII Это уравнение может возникнуть как уравнение в вариациях для более сложного нелинейного уравнения в ходе исследо- исследования устойчивости положения равновесия. Система будет считаться устойчивой, если все решения уравнения (8.1) стремятся к нулю при t—*oo. Как хорошо известно, это эквивалентно требованию того, чтобы все корни характеристического уравнения \" + al\a-l + ... + an = 0 (8.2) имели отрицательные вещественные части. Необходимые и достаточные условия для этого были получены Раусом и Гурвицем; с тех пор было сделано еще многое в этой области. Проблема регулирования была, таким образом, приведена к проблеме расчета. Она свелась к необходимости построе- построения физической системы так, чтобы обеспечить выполнение условий устойчивости. Этот способ исследования является слабым по ряду суще- существенных соображений. В первую очередь утверждается линей- линейность основных уравнений или, что эквивалентно, предпола- предполагается малость отклонений от положения равновесия *). Во-вторых, не охватывается рассмотрение стохастических (случайных) процессов и, в частности, процессов с адаптацией. Поэтому мы в дальнейшем не будем уделять внимание про- проблемам устойчивости. Читатель, интересующийся их изуче- изучением, найдет ряд ссылок в конце главы. 3. ДЕТЕРМИНИРОВАННЫЕ ЗАДАЧИ РЕГУЛИРОВАНИЯ С ОБРАТНОЙ СВЯЗЬЮ Наша математическая модель будет построена по следую- следующей схеме. Рассмотрим диаграмму на рис. 77. Эту диаграмму надле- надлежит интерпретировать следующим образом. В момент вре- времени t на выходе системы S имеется сигнал x(t). Этот сигнал сравнивается с желаемым выходным сигналом w(t). Если имеется какое-либо отклонение, то к системе S прила- *) Проблема устойчивости регулируемых систем отнюдь не связана с рассмотрением только линейных уравнений. (Прим. ред.)
ЗАДАЧИ РЕГУЛИРОВАНИЯ С ОБРАТНОЙ СВЯЗЬЮ S19 гается корректирующий сигнал у=у(х, w, t), стремящийся изменить x(t), чтобы он оказался более близким к w(t). Аналитическое описание простой системы регулирования Система S y(t)=y(x,w,t) Сравнение a:ft) с w(t) Рис. 77. с обратной связью этого типа таково. Вместо .исходного уравнения, описывающего систему х@) = с, (8.3) мы имеем новое уравнение (8.4) где у должно быть выбрано (при наличии определенных ограничений) так, чтобы минимизировать некоторую функцию, которая оценивает как затраты из-за отклонений x(t) от век- вектора желаемого состояния w(t)> так и затраты на приложе- приложение вектора управлений y(t). Следуя нашему обычному подходу к вариационным про- проблемам, мы будем рассматривать эти задачи (которые могут быть сформулированы как задачи, входящие в сферу приме- применения вариационного исчисления) как многошаговые процессы решения непрерывного типа. Однако, как указывалось выше, для вычислительных целей и для обхода трудностей, связан- связанных со строгим обоснованием, мы будем рассматривать только дискретные варианты.
320 ПРОЦЕССЫ РЕГУЛЙРОВМШЯ С ОБРАТНОЙ СВЯЗЬЮ [ГЛ. VH! 4. ВРЕМЕННОЕ ЗАПАЗДЫВАНИЕ Во многих случаях использование вспомогательного шага сравнения и факт приложения управляющих сил вводят в задачу временное запаздывание. Это означает, что у (t) в действительности зависит не от х (t) и w (t), а скорее от х (t— А) и w(t — А), или чаще еще более сложным образом зависит от предыстории процесса. Это реалистичное сообра- соображение вносит некоторые очень интересные математические усложнения, которые, однако, мы не будем здесь рассматри- рассматривать. Ссылки на многие статьи по этому вопросу могут быть найдены в конце главы. б. ФОРМУЛИРОВКА ВАРИАЦИОННЫХ ЗАДАЧ Предположим, что w (f) есть вектор желаемого состоя- состояния и что k [x (t) — w (t)] A -f- о (А) есть мера отклонения х от w на интервале времени [t, t-\-A]. Функционал т \ (8.5) принимается тогда за полную меру отклонений. Как и в боль- большинстве наших исследований, мы вводим аддитивную функ- функцию полезности. Теперь имеется два способа учета реаль- реальных ограничений. Во-первых, мы можем предположить, что для управления имеется ограниченное количество ресурсов; это приводит к ограничению вида т \ q (x, у) dt < bv (8.6) о Во-вторых, мы можем наложить ряд ограничений на уро- уровень прилагаемых управлений П(х9у)^09 /=1, 2,..., k. (8.7) Рассмотрим далее вариационную задачу минимизации функцио- функционала J(y) при ограничении, задаваемом дифференциальным уравнением (8.4). Задача сформулирована теперь в обычных терминах вариа- вариационного исчисления.
7] ДИСКРЕТНЫЙ ВАРИАНТ 321 6. АНАЛИТИЧЕСКИЕ АСПЕКТЫ Как было указано в главе V, задачи описанного выше типа весьма трудны. Тем не менее упорство, изобретатель- изобретательность и определенная доля удачи позволяют нам решить некоторые из них. К несчастью, огромное большинство вопро- вопросов, которые возникают даже при упрощенной постановке задач о регулировании с обратной связью, не совпадают с малым количеством доступных для решения задач. После этих вступительных замечаний, мы впредь посвя- посвятим нашу энергию нахождению алгоритмов, которые приво- приводят к численному решению. Как мы увидим, для достижения этой цели потребуется решить много аналитических вопросов. 7. ДИСКРЕТНЫЙ ВАРИАНТ Поскольку мы собираемся предложить общий метод, мы должны рассмотреть задачу в общем виде. Предположим, что нужно минимизировать функционал т о где х и у связаны уравнением и ограничениями т (a) \gi(x,y)dt^biy /=1, 2, ..., г, (8Л0) (b) /-,(*, j/)< 0, /=1,2,...,5, 0<f<7. Вместо этой непрерывной вариационной задачи мы рассмот- рассмотрим следующую дискретную задачу. Минимизировать по всем укУ удовлетворяющим соотношениям **+г = xk + hk (хк, yk), xQ = ct (8.12) 11 Р. Беллман. С, Дрейфус
322 ПРОЦЕССЫ РЕГУЛИРОВАНИЯ С ОБРАТНОЙ СВЯЗЬЮ [гЛ. Vttt и ограничениям N (аJ^(^'Л)<^ /=1, 2, ..., г, fc=0 Ф)п(хк,ук)^0, /=1, 2, ..., 5, 0 Мы можем либо рассматривать вектор с и величины bt как переменные, либо использовать множители Лагранжа и мини- минимизировать TV r N л (у) = 2 «гс**, л) - 2>/ 2! ^ с*» л) (8л 4) /г = 0 / = 1 k = О или, как делалось ранее, рассматривать, различные комбина- комбинации ситуаций. Все это представляет собой повторение того, что мы описали в главе V. 8. ФУНКЦИОНАЛЬНЫЕ УРАВНЕНИЯ Рассматривая, например, задачу минимизации функционала (8.14), мы получим рекуррентное соотношение вида i = 1 +/„-у(с + Ь(с>У))]- (8Л5) Как и ранее, вычислительная осуществимость решения на этом пути зависит от размерности с. В дальнейшем мы рас- рассмотрим различные способы, в которых может быть исполь- использован метод последовательных приближений. 9. ЗАДАЧА О РЕЛЕЙНОМ УПРАВЛЕНИИ Имеется следующая интересная задача с неявной функ- функцией критерия. Мы хотим минимизировать время, требуемое для перевода системы из одного состояния в другое. Эта • задача возникает во многих различных областях в разных внешних оформлениях. Простой частный случай ее заключается в следующем. Задана линейная система ? х@) = с, (8.16)
9] ЗАДАЧА О РЕЛЕЙНОМ УПРАВЛЕНИИ 323 где на компоненты у наложены ограничения \yi\^mif l=\, 2, ..., N. (8.17) Мы хотим определив у так, чтобы минимизировать время, требующееся для перевода х из начального положения с в заданное, скажем в х = 0. Если предполагается*), что yt могут принимать только значения ±ть то эта задача име- именуется задачей о релейном управлении («bang-bang» control). Этой задаче посвящено большое число теоретических работ, использующих различные методы. Однако проблема получе- получения простого вычислительного алгоритма еще не решена. Если мы заменим (8.1 д) нелинейным уравнением 4jL ), x@) = c, (8.18) то ситуация станет совсем другой. Обозначим через f(c) минимальное время, требуемое для перехода от с в 0. Тогда имеем уравнение f(c) = min [Д +/(<: + bg(c, v))] + о (А), (8.19) у которое в пределе приводит к нелинейному дифференци- дифференциальному уравнению в частных производных min(g(c, у), grad/) = —1, (8.20) V где у подчиняется ограничениям (8.17), или условиям пере- перескока (j/I- = ±wf). Мы пользуемся некоторыми вектор- векторными обозначениями: grad / есть вектор, 1-я компонента кото- df N рого равна ^-; (х,у) = Д^х^, где х{ иУ1 A= 1, 2,..., N) — соответственно компоненты х и у. Из этого соотношения можно извлечь большую инфор- информацию, но его общее решение — дело довольно тонкое. Так как в обе части уравнения (8.19) входит одна и та же функция, то численное решение может быть проведено с помощью либо последовательных приближений, либо при- *) Из принципа максимума Л. С. Понтрягина непосредственно следует, что при ограничениях типа (8.17) управления у( могут в оптимальном решении принимать только значения rfc//^. {Прим. ред.) 11»
324 ПРОЦЕССЫ РЕГУЛИРОВАНИЯ С ОБРАТНОЙ СВЯЗЬЮ [ГЛ. VTTI ближений в пространстве политик. Другой подход можег быть осуществлен с помощью двойственной задачи. Вместо исходной задачи рассмотрим вопрос об определении управ- управления j/, которое минимизирует расстояние от начала коор- координат в конце интервала времени 7. Обозначая это мини- минимальное расстояние через /(г, Т)у мы получим функциональ- функциональное уравнение f(c, T) = mn\f(c + g(c,y)X Г-Д)] + о(Д), у (8.21) f(c,0) = \\ где Первое значение Т, для которого f(ct Г) = 0, и есть вве- введенная выше функция f (с). 10. ВЫКЛЮЧЕНИЕ ЯДЕРНОГО РЕАКТОРА Когда выключается тепловой ядерный реактор, присутст- присутствие продукта деления, йода, который, распадаясь, дает ксенон-135, может вызвать повышение концентрации ксенона в течение многих часов. Это крайне нежелательно, так как может отсрочить на несколько часов момент времени, в ко- который реактор может быть вновь запущен, что в результате приводит к потере эффективности. Один из путей преодо- преодоления этого дефекта состоит в использовании количества ядерного горючего, во много раз большего, чем это требу- екя для создания критического соотношения. Другой путь заключается в тщательном регулировании процедуры вклю- включения с целью минимизации отравления реактора. Это и есть задача регулирования, которую мы хотим рассмотреть. Используя упрощенную модель реального процесса, мы предположим, что состояние реактора в любой момент вре- времени может быть задано с помощью (a) потока нейтронов, ср> (b) концентрации йода, /, \ (8.23) (c) концентрации ксенона, х.
101 ВЫКЛЮЧЕНИЕ ЯДЕРНОГО РЕАКТОРА 325 Предположим, чго мы можем регулировать поток нейтронов ср. Уравнения, определяющие / и х, имеют вид di dt ' (8.24) jc(O)=Ci. dx dt Требуется, чтобы погок нейтронов был сведен до нуля за время Ь, причем процесс начинается при t = 0. В момент b состояние реактора задается условиями (Ь) (с) (8.25) Величины съ и с4 являются функционалами от ср. После момента времени b концентрация ксенона может возрастать в течение нескольких часов благодаря нарушению равновесия концентрации, вызванному остановкой. Уравнения, описывающие эту фазу процесса, таковы: dl dx x (b) = (8.26) имеет вид, показанный на t-b График функции рис. 78. В этом случае нетрудно определить зна- значение ty при котором до- достигается максимум х для t ^ b. Обойдем, однако, на время эту задачу и обозначим этот максимум через р(сдУ с4). Ниже мы рассмотрим задачу определения р (с3, с4) в более общем слу- случае, когда уравнения (8.26) являются нелинейными. Мы хотим определить ср(Она интервале O^t^by так чтобы минимизировать Рз'гз> с0> причем на ср наложено огра- ограничение вида Рис. 78. (8.27)
326 ПРОЦЕССЫ РЕГУЛИРОВАНИЯ С ОБРАТНОЙ СВЯЗЬЮ fГЛ. VIII Это сложная неявная вариационная задача с обычными при- присущими ей трудностями. Вводя функцию f(cx, сь ft) = minp(c3, с4), (8.28) мы имеем рекуррентное соотношение f(clt съ Ь) = min {/[d + А (au? @) — aHcY), ) *<°> > (8.29) с2 + А (аа1<р 4- апсх — (а3 + «4cp)^> * — А]} -f о (A). J Это приводит к приемлемой вычислительной схеме при ус- условии, если мы обладаем вычислительной машиной, способ- способной справиться с функциями двух переменных. 11. МАКСИМАЛЬНОЕ ОТКЛОНЕНИЕ Обсудим теперь детальнее задачу определения функции Р(сг> с0- Рассмотрим рекуррентное соотношение = gl (*п> Уп)> X @) = Clf | = gi(Xn> Уп)> и предположим, что мы хотим определить величину тах|лгЛ|. Эта величина, очевидно, является функцией начальных зна- значений сь с2. Обозначим / (Ci, с о) ^— шах х п . /о о 1 \ Для того чтобы получить рекуррентное соотношение для этой функции, проанализируем, что мы делали до сих пор. При изучении линейных операторов мы полагаем для N^ 1 и всех хь L \Ху х2у..., хдг) = х^ -j- х2 -{-... -|- лг^ (8.32) и используем функциональное уравнение /¦ /v* v V "\ —— / /^А /v v v* \ v \ /fi QO\ L. 1Л1, Ло, . • . ) Л> кт) -—— L. KL*. IА1, А2> •••> ^ \т \ ft *v»»l. I О«ОО ¦ >¦ i\' ч iv — I' yv' л ' Заметим теперь, что оператор взятия максимума М (хх, х.2, ..., л:^) = max [л^, л:2, ..., х J (8.34)
12] МАКСИМАЛЬНАЯ ДАЛЬНОСТЬ 327 удовлетворяет cooiношению М (х{, хъ ..., хА) = М (М (*!, х.2) ..., xN_ ,), л:лг). (8.35) Это соображение позволяет нам решать многие задачи, включающие функционал максимизации с помощью, по суще- существу, той же методики, которую мы использовали при изу- изучении процессов с линейной функцией полезности. Напри- Например, функция, определенная в (8.31), удовлетворяет урав- уравнению f(cb cj = max [cl9 f(gv (сь сй), g\> (сь с*))]. (8.36) Для вычисления f(cbc>2) мы можем использовать метод по- последовательных приближений, основанный на введении вре- времени, как в § 13, или на каких-либо других приемах. 12. МАКСИМАЛЬНАЯ ДАЛЬНОСТЬ Существует немало интересных процессов, в которых может быть использован метод функциональных уравнений, дающий новый аналитический подход и экономичный вычисли- вычислительный метод. Среди них много траекторных процессов, в которых внимание сосредоточено па определении макси- максимальной дальности, минимального промаха и т. п. Cxi Рис. 79. Стандартный подход к таким задачам заключается в вы- вычислении траектории в целом, а затем в определении желае- желаемых специфических характеристик. В качестве простого при- примера такой совершенной методики, основанной на использо- использовании функциональных уравнений, методики, которая приводит к получению только желательной информации и не дает какой-либо другой, рассмотрим следующую задачу. Снаряд выпускается вертикально вверх над плоской зем- землей и подвергается тормозящему действию силы тяжести и
328 ПРОЦЕССЫ РЕГУЛИРОВАНИЯ С ОБРАТНОЙ СВЯЗЬЮ [ГЛ. VU! сил сопротивления. Мы хотим определить максимальную вы- высоту, которой он достигает. Уравнение движения имеет вид igL = _ff_ Л(*1\ *@) = 0, x'@) = v, (8.37) где h(v)—сила сопротивления, зависящая от скорости v. Пусть f(v) — максимальная высота, соответствующая начальной скорости v. (8.38) Рассматривая Д как бесконечно малую величину, получим уравнение f(v) = v&+f[v — (g + h(v)b)\ f о (А). (8.39) Разлагая в ряд и считая Д — 0, приходим к дифференциаль- дифференциальному уравнению ГЮ = 7ТШ' f{0) = 0> (8-40) которое дает J ) и (см. рис. 79). Аналогичным образом, рассматривая плоское движение, описываемое уравнениями d-x [ dx dy /O A<Y\ dx dv\ I \ ' ) мы можем тем же способом определить максимальную даль- дальность и высоту. Обсуждение этого вопроса может быть найдено в работах, перечисленных в конце главы. 13. МИНИМУМ МАКСИМАЛЬНОГО ОТКЛОНЕНИЯ Рассмотрим, наконец, задачу регулирования, включающую минимизацию максимального отклонения. Предположим, что уравнение имеет вид
14] ПОНИЖЕНИЕ РАЗМЕРНОСТИ 329 и желательно выбрать г», на которое наложено ограничение \v(t)\^tn\ О ^t ^ Ту так, чтобы минимизировать функ- функционал J(v)= max |w|. (8.44) Обозначим min J(v)=f(c{, сь Т). V Тогда приближенное функциональное уравнение имеет вид f(ch сь Т) = max [сь min [f{cx -f- ^Д)» с2 + g(cb сь v @) А, Т-Ь)\] + о (А). (8.45) Это соотношение позволяет нам получить численное решение вариационной задачи. 14. ПОНИЖЕНИЕ РАЗМЕРНОСТИ Мы уже указывали, чго единственным препятствием для прямого численного решения широкого класса вариационных задач с помощью динамическою программирования является размерность вектора состояний системы. Например, если х и у имеют размерность /V, то процесс регулирования, на- направленный на минимизацию функционала вида т J(y) = g[x (Т)\ -\-\^k (у) dt (8.46) о по всем у, подчиненным условию ~ = h (х,у), х @) = с, (8.47) включает табулирование функций N переменных f(c, T). Если Л/"= 1, то это тривиально; если 7V=2, то это досту- доступно, но не тривиально; и если Л/^3, то требуются изобре- изобретательность и аналитические усилия, при условии, что мы не используем очень грубую сетку или не ограничиваемся очень малой областью фазового пространства. Постараемся обосновать следующее важное соображение: если (8.47) является линейным уравнением х@) — с (8.48)
330 ПРОЦЕССЫ РЕГУЛИРОВАНИЯ С ОБРАТНОЙ СВЯЗЬЮ [ГЛ. VIII и g[x(T)] в действительности является функцией только k компонент х(Т)} скажем .^(Г), х2(Г),..., xk(T), то тогда вариационная задача может быть решена с помощью функ- функциональных уравнений с рассмотрением только функций k переменных. Основная идея состоит в том, что линейность (8.48) по- позволяет нам отделить влияние начальных условий от влия- влияния внешних сил. Как известно, мы можем найти из (8.48) x = X(t)c-\-\x(t) Х'х (s) у (s) ds, (8.49) о где X (t) — матрица, удовлетворяющая однородной системе dX dt d?=A(t)X, x@) = I. (8.50) Тогда г x(T)=b-\~\K(s)y(s) ds, (8.51) о где Ь и К зависят от Т. Отсюда мы видим, что задача те- теперь сводится к минимизации функционала т 0;=-1 0 у=1 г + Ь\ h 00 dt (8.52) о по всем у. Рассмотрим новую задачу о минимизации функ- функционала KkJyj(s)ds] + t. (8.53)
ОБСУЖДЕНИЕ 331 Обозначим искомый минимум через f(bbbb...,bk,a). Тогда, используя принцип оптимальности, получим: = min [**<>(a))A + /(*i + A[J^ — функциональное уравнение, включающее функции только k переменных. 15. ОБСУЖДЕНИЕ В дополнение к прямому приложению этой методики возможно получить и другие важные результаты. Во-первых, если функция критерия g[x(T)] является квадратичной, то вариационная задача приводится к линейному уравнению Эйлера, которое решается в явном виде. Однако явное ана- аналитическое решение линейной системы большой размерности не является простым делом. Следовательно, даже в этом случае будет значительно более выгодно использовать под- подход с точки зрения функциональных уравнений. Оказывается, что предельная форма уравнения (8.54) допускает явное ре- решение, так как функция f(bhbit...,bk,a) является квадратич- квадратичной формой относительно Ь{ с коэффициентами, зависящи- зависящими от а. Эти коэффициенты удовлетворяют системе квадра- квадратично нелинейных дифференциальных уравнений размерности k(k+\) o '—- с начальными условиями. В то же время из вариа- вариационных уравнений получается линейная система размерности 2/V с двухточечными краевыми условиями. Затем результаты предшествующего параграфа могут быть двумя путями использованы как исходный пункт для метода последовательных приближений. Во-первых, мы мо- можем аппроксимировать общую функцию критерия функцией, зависящей только от k из N компонент; во-вторых, мы мо- можем аппроксимировать исходное нелинейное уравнение ли- линейным. Мы не будем рассматривать эти приемы в дальней- дальнейшем, так как не имели опыта их использования.
332 ПРОЦЕССЫ РЕГУЛИРОВАНИЯ С ОБРАТНОЙ СВЯЗЬЮ [гл. VIU 16. СТОХАСТИЧЕСКИЕ ПРОЦЕССЫ РЕГУЛИРОВАНИЯ Предположим теперь, что физическая система, которую мы пытаемся регулировать, подвергается внутренним и внеш- внешним воздействиям, происхождение и влияние которых не полностью известно. Реальное положение дел, конечно, всегда таково. Однако во многих ситуациях неопределенность производит столь малый эффект, что им можно прене- пренебречь. Предположим, что мы имеем дело с ситуацией, где этого нет. Один из путей преодоления трудностей состоит во вве- введении понятия случайных (или стохастических) воздей- воздействий. Это весьма искусное изобретение математической теории вероятностей позволяет нам получить большое число важных результатов. Оказывается, что даже при рассмотре- рассмотрении многих процессов, где причинно-следственные отношения известны, предположение о стохастических свойствах, приво- приводит к большим математическим упрощениям. Выдающимся примером этого является статистическая механика Гиббса. В дальнейшем мы будем, как и ранее, предполагать, что читатель знаком с основами теории вероятностей и элемен- элементарными сведениями о понятии случайной величины. Для того чтобы избежать усложнений, которые являются побоч- побочными для анализируемого вопроса, мы будем рассматривать только дискретные во времени процессы. В последующих численных расчетах (глава IX) мы будем рассматривать только простейшие дискретные законы распределения. Всюду будут требоваться только зачаточные знания из теории ве- вероятностей. Рассмотрим рекуррентное соотношение где хп есть вектор состояний системы, уп— вектор управ- управлений и гп —случайный вектор, отражающий случайное воз- воздействие, приложенное к системе на п-ы шаге. Первоначально мы будем считать гп независимыми. Далее будет показано, как может быть введена корреляция. Вновь, как и ранее, мы предполагаем, что эффект выбора у, когда система находится в состоянии ху состоит в «до- «доходе» или в «отклонении» h(x,y, r). (8.55а)
171 в чнм состоит оптимальная политика? 333 Здесь г — тот же самый случайный вектор, что и в (8.55). Принимая для простоты аддитивность функции полезности, мы получим в качестве полной меры для iV-шагового процесса выражение RN = h(xvy{, r,) -\-h (x2,y2,rJ-\-...+ h(xN,yN, rN). (8.56) Так как эта величина сама является случайной, мы не можем сразу поставить вопрос о 'ее максимизации или минимизации. Действительно, при изучении стохастических процессов нет единственного способа для постановки точной задачи опти- оптимизации. Один способ состоит в том, чтобы использовать в качестве функции критерия математическое ожидание ве- величины RN по всем случайным величинам rN. Мы будем де- делать именно так, предупреждая вместе с тем читателя об имеющемся здесь элементе произвола. Другим важным кри- критерием является вероятность того, что RN превзойдет неко- некоторую заданную величину. Одно из преимуществ метода функциональных уравнений состоит в том, что он позволяет использовать реалистические критерии, не беспокоясь об удобствах анализа. Использование математических ожиданий является разум- разумным потому, что в математической теории вероятностей су- существует большая группа теорем, которые утверждают, что во многих случаях поведение системы за длительный период времени все более и более приближается к ее среднему по- поведению. С другой стороны, известно также, что при изуче- изучении нелинейных систем это может и не иметь места. Следо- Следовательно, линейные функции полезности, т. е. математические ожидания случайных величин, должны использоваться с боль- большой осторожностью. Существенно понимать, что мы следуем только одному из многих путей. Слишком часто в приложе- приложениях математики к изучению физических явлений частные ме- методы слепо принимаются за истину, причем часто забывается о том, что существуют и другие методы. 17. В ЧЕМ СОСТОИТ ОПТИМАЛЬНАЯ ПОЛИТИКА? Нетрудно заметить, что предшествующее обсуждение еще не позволяет нам изучить оптимальную политику регулирования. Кроме того, еще не ясно, что мы понимаем под оптимальной политикой.
?34 процессы ргп'лировмшя с обратной связью |"гл. vni Для того чтобы разъяснить этот вопрос, обратимся к не- некоторым ранее сделанным замечаниям. При изучении нами вариационного исчисления и динамического программирова- программирования в главе, посвященной траекторным задачам, и вообще во всей предшествующей части работы, посвященной детер- детерминированным процессам регулирования, мы указывали на то, что возможно определить у{ все сразу или один за другим, как функции векторов состояний системы. Тождественность этих двух подходов являлась следствием фундаментального понятия двойственности между точками и направлением в евклидовом пространстве. Иначе говоря, кривую можно рассматривать и как геометрическое место точек, и как огибающую касательных. Когда мы вводим в рассмотрение стохастические явления, положение радикально меняется. Вообще указанные два под- подхода являются резко различными в силу неопределенности будущего. Заимствуя классический подход, мы можем поста- поставить следующую задачу. Определить a priori последовательность векторов yit Уь •••> Уму которые минимизируют функцию R(yi,y* ...,yA)=E{RA). В этой формулировке мы отбрасываем возможность исполь- использования для выработки наших решений знания действитель- действительного состояния системы в любой частный момент времени. Легко видеть, что могут возникнуть ситуации, в которых эта постановка является единственной из возможных, так как требуемая информация может быть недоступной. Вместо задач этой природы мы хотим поставить задачи, в которых принимается во внимание обратная связь, по- позволяющая использовать знание действительных значений некоторых или всех координат системы на каждом шаге. Мы увидим тогда, что решения должны приниматься следующим образом. Начиная с состояния xv принимаем ре- решение ух. Комбинация хъ ух и случайного вектора гх в силу (8.54) приводит в новое состояние лг2. Начиная с известного хъ этот процесс повторяется. Теперь желательно определить последовательность векторов уп, которая минимизирует ма- математическое ожидание RN.
18] ФУНКЦИОНАЛЬНЫЕ УРАВНЕНИЯ 335 Пожалуй, удивительно, что первая задача, которая вклю- включает только минимизацию на пространстве конечной размер- размерности, подлинно трудна, в то время как вторая задача, кото- которая требует минимизации на пространстве функций, про- пространстве политик у\{хх), у*(х$) и т. д., поддается исследо- исследованию с помощью метода функциональных уравнений дина- динамического программирования. Это хороший пример того, что более изощренное и более реалистичное рассмотрение действительных физических про- процессов можег быть значительно более легким математически, чем рассмотрение, которое кажется заметно более податли- податливым для математического исследования. Это только одна из причин, по которой важно изучить много различных математических формулировок, прежде чем погрузиться в море уравнений и поток вычислений. 18. ШУНКЦИОНАЛЬНЫЕ УРАВНЕНИЯ Вводя функцию fN(c) = mmE{RNl (8.57) где Е { } означает операцию определения математического ожидания по всем гп, мы сможем теперь для описанного выше процесса с обратной связью записать некоторые урав- уравнения обычного вида. Мы имеем: = min E{h(c, у, г,)}, Ух ri ,r,»). №58> Предположим, что гп имеют общую функцию распределения G(r). Тогда соотношения принимают вид 31 i (8.59) Vl Отсюда следует, что если не считать введения некоторых усредненных величин, уравнения формально остаются точно такими же, что и в детерминированном случае,
336 ПРОЦЕССЫ РЕГУЛИРОВАНИЯ С ОБРАТНОЙ СВЯЗЬЮ [ГЛ. VHI 19. ВЫЧИСЛИТЕЛЬНЫЕ АСПЕКТЫ Для того чтобы привести (8.59) к арифметической форме, примем, что распределение G (г) является дискретным. Тогда вместо О (г) мы имеем совокупность вероятностей [р^р* .. -,рм]> где Pi есть вероятность того, что г принимает значение rt. В этом случае (8.59) имеет вид м f (с) = min Г >? р h (с9у{, rj) ], У1 j=\ м (8.60) У1 j= 1 Отсюда следует, что численное решение для стохастических процессов регулирования почти в точности совпадает с обыч- обычным решением для дискретного случая, хотя требуется неко- некоторое дополнительное время для производства операции усреднения, входящей в (8.60). 20. КОРРЕЛЯЦИЯ Предположим теперь, что случайные векторы не явля- являются независимыми. Простейшим шагом в направлении учета их взаимосвязи является, возможно, предположение о том, что распределение гп зависит от значений rn_h но не зависит от каких-либо других rt. На (п — т)-ъ\ шаге мы должны тогда добавлять к вектору координат системы значения гп_\. Век- Векторы хп и г„_! определяют «состояние» системы в момент п. Как мы увидим, при изучении процессов регулирования с приспособлением понятие «состояние системы» поддается еще большему обобщению. Пусть G (гп, гп_х) представляет собой функцию распре- распределения гп при заданном значении гп_1. Тогда мы можем ввести функцию fN(c> 'о) = min Е { RN } (8<6п У г и вместо A8.3) получим соотношения .Vl (8.62) n " fN (c> rQ) = min ) lh (c>yv ri) +fN-1 (S (С'У\> ri»l X
21] пример (по локи) 337 Введение эффекта корреляции усложняет численное ре- решение, если предполагается, что г может принимать боль- большое число значений. Если, однако, г есть скаляр, принима- принимающий два или три значения, например ±1, или 1, 0 и—1, то тогда корреляция вносит лишь несущественные дополни- дополнительные трудности. 21. ПРИМЕР (ПО АОКИ) Проиллюстрируем это рассмотрение примером стохасти- стохастического процесса регулирования, глубоко изученного Аоки. Мы рассмотрим также адаптивный вариант этого процесса. Детальные численные результаты могут быть найдены в ра- работах Аоки, перечисленных в библиографии, приведенной в конце этой главы. Некоторые частные случаи рассмотрены в главе IX. Предположим, чго г есть скалярная случайная величина, которая может принимать только значения ±1. Пусть с+ означает величину, получаемую при выборе у{, когда г = -\~ 1, и с_-—величину, получаемую, когда г = —1. Рассмотрим процесс регулирования, в котором мы хотим минимизировать математическое ожидание функции ср от конеч- конечного состояния xN. Что касается статистических свойств г, то пусть р равно вероятности того, что г = -f- Ь так что A—р) — вероятность того, что г = —1. (8.63) Тогда если мы введем функцию /„(<:) = min ?{? (*w)b (8-64) то для нее имеют место соотношения Л (с) = min [ро (г+) -J- A - р) ср (cj)l (8.65) Vi fN(c) = min [pfN_^c+) -f A - p)fN_x {c.)\. (8.66) УI В дальнейшем мы будем сравнивать эти результаты с теми, которые получаются для процесса управления с адаптацией.
338 ПРОЦЕССЫ РЕГУЛИРОВАНИЯ С ОБРАТНОЙ СВЯЗЬЮ [ГЛ. VIII 22. ИГРЫ ПРОТИВ ПРИРОДЫ Мы попытались преодолеть отсутствие детерминирован- детерминированной связи между причиной и следствием путем введения случайных величин с известными распределениями. Нетрудно представить себе ситуацию, когда мы знаем так мало, что нельзя даже считать, что распределение нам известно. Одним из возможных путей в этом случае, причем самым пессимистическим путем, является предположение, что неиз- неизвестные воздействия всегда будут наименее благоприятными из возможных. Иными словами, мы можем предположить, что некоторый противник, которого мы будем (возможно, несправедливо) именовать Природой, выбирает распределе- распределение вероятностей* на каждом этапе таким способом, чтобы сделать максимальным наше минимальное отклонение, или минимизировать наш максимальный доход. Таким образом, мы представляем себе процесс регулиро- регулирования этого типа как игру против природы. Тот тип про- процесса регулирования с обратной связью, который мы иссле- исследовали на предшествующих страницах, становится много- многошаговой игрой, которая может быть легко изучена с помощью метода функциональных уравнений, неоднократно нами ис- использованного. Читатель, интересующийся этими вопросами, найдет деталь- детальное рассмотрение в работах, указанных в конце главы. Мы здесь будем использовать другой подход. 23. ПРОЦЕССЫ С АДАПТАЦИЕЙ Мы далеко не в полной мере использовали многошаго- многошаговый характер регулирования с обратной связью в качестве нашего преимущества в борьбе с незнанием. Посмотрим, не сможем ли мы ввести в нашу математическую модель тот факг, что возможно обучение свойствам процесса в течение времени, когда он протекает. Процесс, в котором это происходит, именуется процессом с приспособлением (адаптацией) или адаптивным процес- процессом. Для того чтобы сформулировать свойства процессов этсго типа в аналитически строгих терминах, мы обобщим понятие вектора состояний системы, которое имело для нас такое значение, введением понятия набор информации (information pattern).
23] ПРОЦЕССЫ С ЛД\ПТЛЦИЕЙ 339 Этот набор информации состоит не только из наших точных сведений, но и из всей неточной информации, которая нами собрана. Вместо того чтобы рассматривать общую ситу- ситуацию, которая приводит к различного рода усложнениям, мы исследуем процесс регулирования, описанный в § 21, но в адаптивном варианте. Мы предполагаем, чго вероятность р заранее не известна. Вместо этого предположим, что мы обладаем априорным распределением вероятностей для /?, скажем И(/?). Кроме того (именно в этом и заключается адаптация), мы будем считать, что нам известно, как исправить эту априорную оценку на основе наблюдаемых нами случайных эффектов. Предполагается, что случайная величина г может прини- принимать только два значения: -|-1 и —1. Если реализуется значение -j-1, то мы заменим Н(р) новой функцией распре- распределения (8.67) \pdH(p) если же реализуется г = — 1, то Н(р) заменяется через (\-p)dH(p) dH_(p)=-{ . (8.68) \(\-p)dH{p) Эго преобразование может быть оправдано различными способами, но должно быть совершенно ясно, что это не един- единственное преобразование и необязательно наилучшее. Однако оно весьма правдоподобно и является очень простым. Набор информации на каждом этапе процесса регулиро- регулирования состоит из вектора состояний с и из априорной функции распределения Н{р). Задавая набор информации, приведенное выше правило адаптации и предписанную функ- функцию (критерий) оценки, мы хотим определить оптимальный процесс регулирования с адаптацией.
340 ПРОЦЕССЫ РЕГУЛИРОВАНИЯ С ОБРАТНОЙ СВЯЗЬЮ [гл. VIII 24. АДАПТИВНОЕ РЕГУЛИРОВАНИЕ С ОБРАТНОЙ СВЯЗЬЮ Рассмотрим теперь процесс, описанный в § 21, но с уче- учетом приспособления. Мы обозначим через fN (с, dH(p)) ма- математическое ожидание функции y(xN) от конечных зна- значений координат, полученное при оптимальной политике. Ма- Математическое ожидание определяется по множеству априор- априорных функций распределения, получаемых по ходу разверты- развертывания процесса. Вместо вероятности р мы имеем ожидаемую вероятность 1 p=\pdH{p). (8.69) о Тогда имеют место соотношения /, (с, dH(p)) = min [р<? (с+) + A - р) <р (с_)] (8.70) у и для fN(c,dH(p)) = min У ~PfN-x x (l-p)dH(p)J (8.71) Мы видим, что тот же аппарат, который был использован для детерминированных и стохастических процессов регули- регулирования, может быть применен и для исследования процес- процессов регулирования с адаптацией. 25. ВЫЧИСЛИТЕЛЬНЫЕ АСПЕКТЫ На протяжении значительной части предшествующих стра- страниц мы бились над задачами, связанными с использованием функций многих переменных для вычислительных целей. Как же тогда мы используем функции от функций, типа появив- появившихся в (8.71)? Ответ, конечно, таков: мы не можем их ио
25] ВЫЧИСЛИТЕЛЬНЫЕ АСПЕКТЫ 341 пользовать непосредственно. Мы должны каким-либо спосо- способом привести их к функциям конечного числа переменных, а реально — к функциям небольшого числа переменных. В одних случаях это может быть сделано легко, в дру- других — только с использованием весьма совершенных методов; для некоторых же задач в настоящее время вообще не су- существует никакой методики. В данном случае мы можем про- произвести это существенное сокращение благодаря специальной структуре процесса. После т-\-п этапов, в которых т раз наблюдалось г = —|—1 и п раз г — —1, начальное априорное распределе- распределение М(р) преобразуется в распределение вида рт{\— p)ndH(p) (8.72) \pm(\-p)ndH(p) о Следовательно, вместо функций распределения могут быть использованы числа ту п. Набор информации может быть заменен вектором текущих состояний и числом наблюдав- наблюдавшихся реализаций -f-1 или—1. Рекуррентное соотношение (8.71) можно теперь перепи- переписать в виде fN (с> т, п) = min [pmufN__, (с+, т + 1, п) -f P««)/jV-i(O^«+l)L (8.73) где Ртп = °-j • (8.74) \pm0—p)ndH(p) Хотя мы теперь имеем дело с функцией трех переменных, но сетка переменных является «расширяющейся», так как (т,п) переходит только в (/п-4-1,я) или в (т, п-\-\). Рассмотрение различных приемов, с помощью которых можно рассматривать эту ситуацию, имеется в работе Аоки, указанной в библиографии в конце главы.
342 ПРОЦЕССЫ РЕГУЛИРОВАНИЯ С ОБРАТНОЙ СВЯЗЬЮ [гл. VIII 26. ТЕОРИЯ СВЯЗИ И ИНФОРМАЦИИ Основная проблема нашей цивилизации состоит в передаче информации от одного человека к другому или от одной машины к другой. Возможно, наиболее трудно преодолимой и ставящей в тупик частью этой проблемы является само определение того, что мы понимаем под информацией и как мы договоримся ее измерять. К счастью, в некоторых случаях имеется очень простой способ преодоления этой трудности. Вместо того чтобы пы- пытаться изучать информацию как «улыбку чеширского кота»*), мы рассмотрим действительный физический процесс, в кото- котором информация используется для выработки решений. Ве- Величина информации может быть тогда измерена через эф- эффективность решений. Таким образом, полезность информации зависит от ее применения — это наиболее разумная концепция! Рассмотрим процесс передачи сообщений как совокуп- совокупность трех элементов: источника сигналов, канала связи, ко- который преобразует сигналы, исходящие из источника, в дру- другие сигналы, и приемника, который интерпретирует сигналы для наблюдателя. Наблюдатель делает выводы на основании сигналов, которые он принимает. Эти решения определяют состояние другой системы <?. Для того чтобы свести схему к точной математической задаче, проделаем следующее. В любой частный момент вре- времени источник испускает одни из К различных сигналов, которые мы обозначим символами /==1, 2, ... , К. Канал связи в силу различных внутренних несовершенств и внеш- внешних воздействий преобразует сигнал / в сигнал j(j=\, 2, ... , М) с вероятностью /?,у. Первоначально мы будем считать ее известной. От наблюдателя после получения этого сигнала требуется принять решение, которое действует на подсистему 5. Это решение основывается на знании им ве- вероятности rt, с которой может быть передан 1-й сигнал, за- заранее указанного набора вероятностей искажений в канале ptJ и вектора состояний системы х. Результат решения состоит *) Улыбка чеширского кота, по сказке Л. Кэррола «Алиса в стране чудес», существовала отдельно от упомянутого кота. (Прим. ред.)
28] ФОРМУЛИРОВКА ЗАДАЧИ 343 в преобразовании х в случайный вектор z, распределение которого определяется исходным сигналом, полученным сиг- сигналом, нынешним состоянием системы и решением. 27. ПОЛЕЗНОСТЬ КАК ФУНКЦИЯ ИСПОЛЬЗОВАНИЯ Для того чтобы сравнить различные конструкции, мы должны иметь возможность оценивать свойства системы свя- связи. Эта оценка наиболее естественно выражается через ее использование. Хотя в некоторых специальных случаях воз- возможно приписать сравнительные числовые характеристики пе- передатчикам, приемникам или каналам связи безотносительно к другим компонентам системы, но, вообще говоря, для ре- реалистичных и важных процессов необходимо рассматри- рассматривать полную систему как одно целое. Как мы увидим, та- такое описание проблемы полезно не только для разъяснения наших идей; оно указывает нам и тот математический аппа- аппарат, который мы будем использовать. 28. ФОРМУЛИРОВКА В ТЕРМИНАХ ДИНАМИЧЕСКОГО ПРОГРАММИРОВАНИЯ Предположим, что мы имеем дело с многошаговым про- процессом, на каждом шаге которого сигнал испускается источ- источником, преобразуется в канале связи, принимается наблюда- наблюдателем, который на этой основе вырабатывает решение. Этот процесс продолжается N шагов, в конце которых процесс оценивается с помощью заданной функции ср (zN) от конеч- конечного состояния zN системы 5. Мы введем последовательность функций /дг(л')—равных математическому ожиданию ср (zA)} полученному в результате /V-шагового процесса, начи- начинающегося, когда S находится в состоянии х, при ис- использовании оптимальной политики, для N = 1,2 и всех допустимых х. (8.75) Пусть G(i, у, ху q\ z) означает функцию распределения для г, где смысл индексов /, j и х указан выше, a q озна- означает выбор решения. Тогда в этих терминах мы имеем: /, (*)= max [2 г, {? рц \ ? (z) dQ (i, j, x, q; г)\] (8.76)
344 ПРОЦЕССЫ РЕГУЛИРОВАНИЯ С ОБРАТНОЙ СВЯЗЬЮ [ГЛ. VIII И К М ро 5>{2 \ ,J, х, о; г)\] (8.77) Я i=\ для N=2y 3,... 29. ПРОЦЕСС С АДАПТАЦИЕЙ Рассмотрим теперь следующий процесс — относительно простой вариант ситуации, в которой мы не имеем полкой информации о свойствах канала связи. Предположим, что источник испускает два типа сигналов, нули и единицы. При прохождении через канал связи име- имеется вероятность р точной передачи, т. е. О преобразуется в 0 или 1 в 1. Наблюдатель после получения сигнала 0 или 1 держит пари на некоторую сумму денег (любую от нуля до полной суммы, имеющейся в его распоряжении), что сиг- сигнал, который им получен, совпадает с посланным. Предполо- Предположим, что имеются равные шансы — обстоятельство, несущест- несущественное для этого рассмотрения. Предполагая, что этот процесс повторяется N раз, мы хотим найти политику, которая максимизирует математичес- математическое ожидание заданной функции ср от конечной суммы денег. Имеекя много способов сформулировать задачи этого типа. Мы начнем следующим образом. Основываясь на какой-то доступной информации, мы предположим, что априорное рас- распределение р есть G(p), которая не является ступенчатой функцией с единственным скачком в точке р0. Мы далее предположим, что успешно спорящий игрок 1 преобразует оценку для р от dG(p) к pdG{p)l^pdG(p)y а не- о i удачно спорящий — от dG{p) к A—p)dG(p)f ^A—p)dG(p)- о При этих предположениях мы хотим определить политику, которая максимизирует математическое ожидание заданной функции от конечной суммы денег.
31] СТЕПЕННОЙ ЗАКОН &К> 30. ФОРМУЛИРОВКА В ТЕРМИНАХ ДИНАМИЧЕСКОГО ПРОГРАММИРОВАНИЯ Пусть х — исходная наличная сумма денег. Введем функ- функцию /^ (а*, ш, п)—математическое ожидание ср (гЛг), где zN—количество денег после TV шагов при началь- начальном количестве л* и использовании оптимальной по- политики. При этом задана информация, что произошло т удачных и п неудачных пари. (8.78) Введем обозначение Ятп =  , Ятп = 1 — Ятп- (8-79) \Pm(\-p)ndG и Тогда мы получим следующие рекуррентные соотношения: fN (х, т, п) = max \qmnfN_ {(х + у; т + 1; п) -f + g'mnfN,1(x-y,m)n-{-\)l (N=2y 3, ...) (8.80) и fi(x,m,n)= max [^я ?(at+j/) + ^т,г?(^ — у)]. (8.81) Здесь у — ставка в пари. 31. СТЕПЕННОЙ ЗАКОН Задача может быть решена в явном виде, если <р (z) = = az&, а, ?^>0, или в предельном случае <р (г) = log г. Рас- Рассмотрим сначала случай степенной функции. Для а=1 мы имеем: /](*; т, п)= max \qmn(x+y)b -\- qmn(x — y)b] = = хь max \qmn(\ +У? + Ятп{\ -y)b\- (8-82) Легко теперь доказать по индукции, что fN (х; т, п) = СА (т, п) хь, (8.83)
346 ПРОЦЕССЫ РЕГУЛИРОВАНИЯ С ОБРАТНОЙ СВЯЗЬЮ [ГЛ. VIII где последовательность {CN(m, я)} определяется соотношением CN (т, п) = qmnCN_, (« + 1, п) -f qmn CN_, (т, п + 1) + + tnax {qmn\og(\+y) + q'mn\og{\-y)\. (8.84) l 32. ЛОГАРИФМИЧЕСКИЙ ЗАКОН Сходным образом в логарифмическом случае мы можем показать, что fN{x\ m, n) = \ogx-\-CN(m, ri), (8.85) где CN{m,ri) = qmnCN_x(m+\, л) + qmn CN_X (m, я+ 1) -f + max [^logO+j/J + ^logO-j;)]. (8.86) 1 Хотя явно оценить {CN(my n)} нелегко, нетрудно определить оптимальную политику. Мы видим, что \{2qmn—\)x при <7тл>у, О при qmn^^. 33. ДАЛЬНЕЙШИЕ УПРОЩЕНИЯ И ЧИСЛЕННЫЕ РЕЗУЛЬТАТЫ Если начальное распределение задано в форме где В (а, Ь) — бета-функция (этот выбор позволяет с боль- большой гибкостью описывать начальную кривую распределения), то мы можем получить: Чтя pm-ira-i ^ —р)П+<>-1 dp
33] УПРОЩЕНИЯ И ЧИСЛЕННЫЕ РЕЗУЛЬТАТЫ 347 о X о ч с X л ч о 00
348 ПРОЦЕССЫ РЕГУЛИРОВАНИЯ С ОБРАТНОЙ СВЯЗЬЮ [ГЛ. VIII Для логарифмического случая это означает, что оптимальная политика (после т выигрышей и п проигрышей) состоит в том, чтобы поставить долю от имеющейся суммы, равную т + а-(п + Ь) (889) т ¦ при условии, что qmn^> ту , или не ставить ничего, если qmn^ Это приводит к очень простому способу измене- ния априорной вероятности успеха от попытки к попытке. - /00 90 60 70 %60 50 40 30 10 20 30 40 60 60 70 80 90 100 Число, пари Рис. 82. Численный эксперимент был проведен для значений а = 4, ft =1/2, которые дают кривую О\р), имеющую форму, пока- показанную на рис. 80. Предполагалось, что канал имеет вероят- вероятность точной передачи /? = 0,75. Тогда с помощью таблиц случайных чисел была имитирована последовательность 100 пари двумя способами: при первом было известно, что /? = 0,75, так что половина наличного капитала ставилась при /1 / А Л ¦у Л \ \ \ ч V
КОММЕНТАРИИ И БИБЛИОГРАФИЯ 349 каждой возможности, во втором этих сведений не было и использовалась описанная выше схема. Результаты показаны на рис. 81, по которому можно судить об удовлетворительности политики. На рис. 82 пока- показано изменение доли капитала на ставку при каждом пари; после 100 пари только 68 было выиграно, так чго ставилось приблизительно 40°/0 наличного капитала, чго совсем не- ненамного ниже оптимального значения 50°/0. КОММЕНТАРИИ И БИБЛИОГРАФИЯ § 1. Детальное рассмотрение понятия регулирования с обратной связью может быть найдено в книге: R. Bellman, Adaptice Control Processes: A Guided Tour, Prin- Princeton, University Press, Princeton, New Jersey, 1961 [русский перевод: Р. Беллман, Адаптивные процессы управления, Изд-во «Наука», 1964]. В ней имеются исчерпывающие ссылки на современную лите- литературу. § 2. Дальнейшее обсуждение и библиография имеются в Н. Bate man, On the control of an elastic fluid, Bull. Amer. Math. Soc, vol. 51, 1945, pp. 601—646. § 4. См. монографию: R. В e 11 m a n and J. M. Danskin, A Survey of the Mathema- Mathematical Theory of Time Lag, Retarded Control and Hereditary Pro- Processes, The RAND Corporation, Report R-256, 1954, и недавно вышедшую книгу: R. Bellman and К. L. С о о к е, Differential-difference Equa- Equations, Academic Press, Inc., New York, 1962. §9. Cm. R. Bellman, I. Glicksberg and O. Gross, On the bang- bang control problem, Q. Appl. Math., vol. 14, 1956, pp. 11—18; J. P. La S a 11 e, On time-optimal control systems, Proc. Nat. Acad. Sci. USA, vol. 45, 1959, pp. 573—577, где можно найти дальнейшую библиографию § 10. См. М. Ash, R. Bellman and R. К а 1 a b a, On control of reactor shutdown involving minimal xenon poisoning, Nuclear Sci. and Engr., vol. 6, 1959, pp. 152—156.
350 ПРОЦЕССЫ РЕГУЛИРОВАНИЯ С ОБРАТНОЙ СВЯЗЬЮ [ГЛ. VIII § 11. См. R. Bellman, Notes on control processes—on the minimum of maximum deviation, Q. Appl. Math., vol. 14, 1957, pp. 419—423. § 12. Cm. R. Bellman, Functional equations and maximum range, Q. Appl. Math., vol. 17, 1959, pp. 316—318. § 14. Cm. R. Bellman, Some new techniques in the dynamic programming solution of variational problems, Q. Appl. Math., vol. 16, 1958, pp. 295—305. R. Bellman and R. К a 1 a b a, Reduction of dimensionality, dy- dynamic programming, and control processes, J. Basic Engr., March 1961, pp. 82—84. С W. Merriam III, An optimization theory for feedback control system design, Information and Control, vol. 8, 1960, pp. 32—59. A. T. Fuller, Optimization of non-linear control systems with transient inputs, J. Electronics and Control, vol. 7, 1960, pp. 465—479. E. L. Peterson, Recent Soviet Progress in Adaptive and Opti- Optimum Control, Technical Military Planning Operation, SP-121, Santa Barbara, California, 1961. M. Aoki, On optimal and sub-optimal policies in the choice of control forces for final-value systems, IRE National Convention Record, part 4, 1960, pp. 15—21. R. Pallu de la Barrier e,Controle des Systemes Dynamiques, Faculte des Science, University of Caen, 1961. M. Aoki, Dynamic Programming and Conditional Response Extra- Extrapolation, Second Joint Automatic Control Conference, University of Colorado, 1961. В этой работе можно найти много других ссылок. J. Chan u gam and G. E. P. Box, Automatic Optimization of Continuous Processes, Department of Math., Princeton University Technical Report No. 38, 1960. L. D. В е г к о v i t z, A Variational Approach to Differential Ga- Games, Advances in Game Theory, Princeton, 1964, pp. 127—174. С. М. К a shma r, E. L Peterson, F. X. Remond, A Gene- General Approach to the Numerical Solution of Multi-dimensional Nonlinear Boundary-valued Problems, General Electric Co., Santa Barbara, California, 1960. R. E. К a 1 a b a, Computational Considerations for some Determi- Deterministic and Adaptive Control Processes, The RAND Corporation, Paper P-2210, 1961. Многие дальнейшие результаты см. в R. В е с k w i t h, Analytic and Computational Aspects of 'Dynamic Programming Processes of High Dimension, Ph. D. Thesis, Purdue University, 1959.
КОММЕНТАРИИ И БИБЛИОГРАФИЯ 351 § 16. Дальнейшее обсуждение и ссылки даны в книге, упомя- упомянутой выше. § 21. В следующей главе мы изложим некоторые численные результаты, полученные Аоки. § 22. См. главу 9 книги «Динамическое программирование» по поводу многошаговых процессов с двумя участниками. Там же име- имеются дальнейшие ссылки. § 23—33. Мы следуем работам: R. Bellman, A mathematical formulation of variational processes of adaptive type, Fourth Berkeley Symposium on Mathematical Statistics and Probability (в печати). R. Bellman and R. К a 1 a b a, A mathematical theory of adap- adaptive control processes, Proc. Nat. Acad. Sci. USA, vol. 45, 1959, pp. 1288—1290. R. Bellman and R. К a 1 a b a, On adaptive control processes, IRE National Convention Record, part 4, 1959, pp. 3—11. R. Bellman and R. К a 1 a b a, Dynamic programming and adap- adaptive control processes: mathematical foundations, IRE Trans, on Automatic Control, vol. AC-5, 1960, pp. 5—10. R. Bellman and R. К a 1 a b a, On communication processes in- involving learning and random duration, IRE National Convention Record, part 4, 1958. Дальнейшее рассмотрение и ссылки имеются в книге, указанной в § 1, и в работе: Н. W. G r i n n e 11, On the Optimum Utilization of Correlated Data by Decision Schemes in Information Channels, General Electric Com- Company, RM-60-TM-65, Santa Barbara, California, I960. Рассмотрение путей, на которых динамическое программирование может быть приложено к управлению химическими процессами, да- дано в работах: R. A r i s, The Optimal Design of Chemical Reactors, Academic Press Inc., New York, 1961. R. A r i s, The Optimum Conditions for a Single Reaction, Depart- Department of Chem. Engr., Univ. of Minnesota, Minneapolis, Minn. (не опубликовано). R. A r i s, The Optimum Design of Adiabatic Reactors with Several Beds (не опубликовано). R. A r i s, The' Optimum Operating Conditions in Sequences of Stirred Tank Reactors (не опубликовано). R. A r i s, Optimum Temperature Gradients in Tubular Reactors (не опубликовано). R. A r i s, D. F. R u d d and N. R. A m u n d s о n, On optimum cross-current extraction, Chem. Engr. Science, vol. 12, 1950, p. 88. G. С Brown and others, Unit Operations, John Wiley and Sons, Inc., New York, 1955.
352 процессы регулирования с обратной связью [гл. viu J. D r a n о f f, L. Mitten, W. Stevens, L. Wanninger, Jr., Application of Dynamic Programming to Countercurrent Flow Processes, Technological Inst., Northwestern University, I960. S.Dreyfus, Computational aspects of dynamic programming, Operations Research, vol. 5, 1957, pp. 409—415. J. Happel, Chemical Process Economics, John Wiley and Sons, Inc., New York, 1958. J. J. H u r, Chemical Process Economics in Practice, Reinhold, New York, 1956. R. С Johnson, W. E. В a 11 et al., Mathematics, computers, operations research, and statistics, Indust. and Engr. Chem., vol. 52, 1960, pp. 359-367. R. C. J о h n s о n, S. M. Roberts and С A. P f r e t z s с h n e r, Optimization and its Importance to Chemical Engineering, AIChE Ann. Meeting, San Francisco, California, December 7—9, 1959. M. S. Peters, Plant Design and Economics for Chemical Engi- Engineers, McGraw Hill Book Co., Inc., New York, 1958. S. M. Roberts, Stochastic Models for the Dynamic Programming Formulation of the Catalyst Replacement Problem, Optimization Techniques in Chem. Engr. Symp., New York University, May 18, 1960. С E. Robinson and E. R. G i 11 i 1 a n d, Elements of Fractio- 'nal Distillation, McCraw-Hill Book Co., Inc., New York, 1950. H. E. S с h w а у е r, Process Engineering Economics, McGraw-Hill Book Co., Inc., New York, 1955. R. E. T г е у b a 1, Mass Transfer Operations, McGraw-Hill Book Co., Inc., New York, 1955. L. A. Wanninger, The Application of Dynamic Programming to a Distillation Column, M. S. Thesis, Northwestern University, August, 1960. \V. F. Gruter and B. H. M e s s i к о m e r, S>stematische Aus- beuteberechnung fur isotherme Reaktoren im Falle zusammen- gestetzer Reaktionen, CIBA, Basel, Switzerland, 1960. W. F. Gruter and В. Н. Messikomcr, Optimalgestetze in der chemischen Reaktionstechnik, Helvetica Chimica ActJ, vol. 44, pp. 285—298. W. F. Gruter and B. H. M e s s i к о m e r, Dynamische Program- mierung in der chemischen Technik,die Optimierung chemischer Reaktionsaubeuten, Helvetica Chimica Acta, vol. 43, pp. 2182—2186. VV. F. Gruter and B. H. M e s s i к о m e r, Optimalgesetze in der chemischen Reaktortechnik, Chimica, vol. 14, 1960, pp. 263—264. S. M. Roberts and J. D. M a h о n e y, Dynamic Programming Control of a Batch Reaction, 1961. S. M. Roberts, Dynamic Programming Formulation of the Cata- Catalyst Replacement Problem, 19il. A. N о m о t o, Dynamic Programming Approach to Brachistochronic Program of Batch Process, Case Institute of Technology, 1959. A. N о m о t o, Automatization of Dynamic Testing, Case Institute of Technology, 1959.
КОММЕНТАРИИ И БИБЛИОГРАФИЯ 353 Изучение асимптошческих свойств систем pei >лирования дано в работах: D. S. A d о г п о, The As>mptotic Theory of Control Systems — I: Stochastic and Deterministic Processes, Jet Propulsion Lab., Technical Release 34—73, June 30, I960. M. F r e i m e r, A Dynamic Programming Approach to Adaptive Control Processes, Lincoln Laboratory, No. 54-2, 1959. M. F r e i m e r, Topics in Dynamic Programming — II: Truncated Policies, Lincoln Laboratory, No. 54 G-0020, I960. Бо. се пубокий анализ систем, основанных на пари, проводится в работе: L. E. D u b i n s and L. J. Savage, How to Gamble if You Must (в печати). Общее рассмотрение вопроса об использовании вычислитель- вычислительных машин дано в работе: P. A r m e r, Attitudes Towards Intelligent Machines, The RAND Corporation, Paper P-2114, 1960. ДОПОЛНИТЕЛЬНАЯ ЛИТЕРАТУРА Более подробное и строгое изложение методов, описанных в данной главе, имеется в книге: Р. Б е л л м а н, И. Г л и к с б е р г, О. Гросс, Некоторые во- вопросы математической теории процессов управления, ИЛ, 1962. О связи этих методов с другими подходами к задачам оптими- оптимизации автоматических систем см. А. А. Ф е л ь д б а у м, Оптимальные системы, Физматгиз, 1963. 12 Р. Беллман. С. Дрейфус
ГЛАВА IX ЧИСЛЕННЫЕ РЕЗУЛЬТАТЫ ДЛЯ ПРОЦЕССОВ РЕГУЛИРОВАНИЯ С ОБРАТНОЙ СВЯЗЬЮ 1. ВВЕДЕНИЕ Здесь мы хотим привести некоторые численные резуль- результаты для типичных систем регулирования с обратной связью. Сначала будет рассмотрена стохастическая задача регулиро- регулирования, связанная с уравнением Ван-дер-Поля x"+jx(x2-l)y + *=/@ + ?@> (9.1) где f(t) — случайная возмущающая сила с известными харак- характеристиками. Вторая задача относится к электронной лампе, подвергающейся случайным воздействиям с неизвестными ха- характеристиками. Последнюю задачу мы будем исследовать как процесс с приспособлением. Результаты этой главы основы- основываются на работе М. Аоки. 2. ДИСКРЕТНЫЙ СТОХАСТИЧЕСКИЙ ПРОЦЕСС Вместо дифференциального уравнения (9.1) используем раз- разностные уравнения Уо=с2> /2 = 0, 1, ... Здесь хп представляет положение системы в момент пу уп — скорость, fn — случайную силу, gn — силовое сла- слагаемое, определяемое действием регулятора.
3] РЕКУРРЕНТНЫЕ СООТНОШЕНИЯ 355 Для простоты примем, что случайная сила является ста- стационарной последовательностью случайных величин с рас- распределением (be вероятностью р, [ —о с вероятностью I—р. Напомним кратко основные сведения об однородном уравнении Ван-дер-Поля (здесь р-^ х"-f ц (jc2 — I)х'-f-х = 0. (9.4) Начало координат в фазовой плоскости (х=0, хг=0) является неустойчивой точкой равновесия. Следовательно, случайное возмущение системы будет вызывать в ней периоди- периодические колебания, соответствующие единичному предельному циклу. Предположим, что нашей целью являются преду- предупреждение этих колебаний и поддержание системы в по- положении равновесия. Стремясь к этой цели, мы будем вы- выбирать управление gn (n — 0> I,..., N) так, чтобы минимизи- минимизировать математическое ожидание максимального отклонения системы от положения равновесия на интервале времени 0 < л < N. 3. РЕКУРРЕНТНЫЕ СООТНОШЕНИЯ Определим, как обычно, функцию fN(*> У)> равную математическому ожиданию максимального отклоне- отклонения точки в фазовой плоскости, изображающей регулируемую систему от начала координат в TV-шаговом процессе регули- регулирования, начинающемся из точки (ху у) при использовании оптимальной политики. Измеряя отклонение от равновесия расстоянием \fx%-\-yly мы получим, как и в предшествующей главе, соотношения /i (х> У)= Vх* ~~ЬУ2> Л (*> У) = тах {/**+/; min [рЛ-i (^+, 3^+) + (9-6) +a-/')/*-i(^j'-)]},
356 ЧИСЛЕННЫЕ РЕЗУЛЬТАТЫ где введены обозначения y.=y+-2b. [ГЛ. IX (9.7) Мы используем эти уравнения для вычисления последова- последовательности {fk(x, у)). 4. ВЫБОР ПАРАМЕТРОВ Последующие численные результаты были получены для диапазона изменения р от 0 до 1 и для р. = 1; А = 0,05; — 0,25 <*; j/^0,25; ? = 0,0625. (9.8) Выбор управления g был ограничен следующими усло- условиями: =±m> если /*(*,jO<0,2; Г=±7, если 0,2. (9.9) Анализ чувствительности fk(x,y) к изменению р упро- упрощается в силу следующих соображений. Предполагая, без нарушения общности, что оптимальное управление таково, что g ( — х9—у) = —g(x,y), имеем: (_у) А = -(^) = -(*_ 9-10) - — \у+)- ) Отсюда по индукции следует, что fk (х, у,р)=/к( -х, -у, 1-/7). (9.11) Следовательно, если нам известна оптимальная политика при данном р для всех х на* фазовой плоскости, то извест- известна оптимальная политика и для A —р). Это вдвое сокра- сокращает объем задачи по определению зависимости от р. При ограничении области изменения хну прямым уг- 1 1 лом—-т-^х, у^-т возникает задача установления подхо-
5] ОБСУЖДЕНИЕ РЕЗУЛЬТАТОВ 357 л! fk\X, h дящих условий для последовательности {fk(x>y)} на границе и за ней. Имеется несколько разных способов рассмотрения этой ситуации. Один из них заключается в том, что пола- полагают: ^]_t 1_ \_ "~ 4 ' 4 ~^-У ^- 4 ' 1 i i (9-12) 1[# 1_ 1 Другой способ состоит в выборе управления таким, чтобы на систему всегда действовали силы, стремящиеся ввести ее в область фазовой плоскости —т^ (Х>У) ^= т > если си' стема выйдет из этой области. В дальнейших вычислениях мы будем следовать первому методу. ¦•!)• б. ОБСУЖДЕНИЕ РЕЗУЛЬТАТОВ Впредь будем писать /ь(х,у)=Мх,у,р), 6=1,2 (9.13) что указывает на особую зависимость от р. Ясно, что fk является неубывающей, когда k возрастает. В окрестности начала координат разумно предположить, что /^T7^Pfk(x+,y+,p) + (l~p)fk(X-,y.tpy (9.14) Эго окажется справедливым для последующих численных результатов. В самом деле, видно, что в узкой полосе, включающей ось ху этот результат верен. Интересно нанести на плоскость (дг, у) ряд значений, соответствующих равным величинам ожидаемого максималь- максимального отклонения, которые располагаются в фазовой пло- плоскости на кривой, определяемой уравнением fn(x,y,p) = c, .. (9.15)
358, ЧИСЛЕННЫЕ РЕЗУЛЬТАТЫ [ГЛ. IX для фиксированных k и р. Типичные кривые показаны на рис. 83 и 84. Для достаточно больших \у\ выражение \fx*-\-y\ очевидно, превосходит Д(#,з>, p)- Это проявляется на рис.83 и 84 в том, что для больших у часть кривых оказы- У У -0,20 л = 7,0 %(х,УР) =0,7(внутренняя кривая) - fn(x, у р)=0,75(внутренняя кривая) 4=0,2(внешняя кривая) Рп(?,ур)=0,25 (внешняя кривая) -0,25^ х; у* Рис. 83. Кривые fn (х, у, р) = const. вается частями графиков \/х14-у1 =с. Это можно также увидеть (рис. 85 и 86), проводя сечение функций fb(xfy,p) для постоянных k, р и х. 6. ЗАДАЧА О КОНЕЧНЫХ ЗНАЧЕНИЯХ В качестве второй задачи, которую мы хотим исследо- исследовать численно, возьмем задачу о.дискретном процессе регу- регулирования, описываемом скалярным уравнением xn + l = axn-+-fn-\-gn, xo = c, (9.16) где fn — случайная вынуждающая сила, a gn — управление. Мы интересуемся случаем, когда функция распределения для fn известна не полностью.
б] ЗАДАЧА О КОНЕЧНЫХ ЗНАЧЕНИЯХ 359 У У i I -0,20\ \ OJO N. a?o*\ v 4* '-0,20 ) j 'ojoj \ \0t20 17 ?20 ¦' / /ЦЩ 0,20 ч -020 \ \ п = 10 п =70 р=0,25 р = 0,375 fn(x,y,p)=0,1 (внутреяяяя хризая) fn(x,i/,p)=0,1 (внутренняя правая) Рп@,У,Р)=0,15(промежуточная нривая) Рп (х,у,р)=0,15(промежуточная правая) fn(x,y,p)=0t20(внешняя кривая) fn(x)y,p)=0,20(внешняя кривая) ^0,25^х9 у^0,25 У -0,25^х; ущп25 / K. ?20 ^x \ / / [oA o, 0,20 \ \ 's0,20 p = 0,125 fn (x, ytp) = 0,1 (внутренняя кривая) fhfo, У, Р) = 0J5(промежуточная кривая) fn(xty,p) = 0,20(внешняя кривая) -0,25^X; у^0,25 Рис. 84. Кривые fn(x, у, /?) = const.
360 ЧИСЛЕННЫЕ РЕЗУЛЬТАТЫ [ГЛ. ] 0.2600 0.2600. 1 б 1011 15 2021 Рис. 85. Зависимость fn (x, у, р) от К
6] ЗАДАЧА О КОНЕЧНЫХ ЗНАЧЕНИЯХ 36! 0,3000 0,2800 0.2600 0,2400 0,1800 5 0,1600 L Ч? 0,1400 0,1200 0,1000 0,0800 E?=/ j=/J да/ = 11 J = 13 "i=1 j = 12 ¦ i = 11 J--12 = g ^7 /= / > /= 13J- 10 < / = 13j- 9 0,125 0,25 0,375 0,5 Рис. 86. Зависимость fn (x, y} p) от P, Мы сделаем следующие предположения: (a) fn принимает только два значения ±_Ъ с вероятно- 1, стями/?и 1 — р соответственно, причем р неизвестно; | (b) gn может принимать только два значения ± т, при- причем т^Ь\ (c) целью процесса является минимизация математиче- математического ожидания x2N. (9.17)
362 ЧИСЛЕННЫЕ РЕЗУЛЬТАТЫ [ГЛ. IX 7. СТОХАСТИЧЕСКИЙ ВАРИАНТ Если р считать известным, то мы получим функциональ- функциональное уравнение hk{x)= min М*)= min [pxl + (l-p)xl\ ^(9Л8) g=±m для функции /*7v(jc) = minE {x^}- Здесь x+ = ax + b + g, x_—ax — b -j- g. Это уравнение можно использовать для получения мно- многих сведений об аналитической природе оптимальной поли- политики. Важно рассмотреть эту последовательность функций {hn(x)\, так как интуитивно ясно, что при увеличении числа испытаний поведение процесса с адаптацией будет все более и более приближаться к поведению стохастического процесса, в котором вероятность р была оценена на основе наблю- наблюдаемой ранее часюты появления -J- Ь и — Ь. 8. ПРОЦЕСС С АДАПТАЦИЕЙ Рассмотрим теперь простой процесс с адаптацией в ситуа- ситуации, когда неизвестная вероятность р равна либо рь либо Р*(Р\^>Ръ) с априорной вероятностью Pi(p=Pl) = z. (9.20) Предположим, что если наблюдалось /=-|"^> то апосте- апостериорная вероятность будет равной а если /= — Ь, то апостериорная вероятность принимается равной , » 0-Pi) Вводя функции kN(x, г) =
ПРОЦЕСС С АДАПТАЦИЕЙ х = 0,25 'X =0,125 • х = - 0,125 а =7/8 Ъ = 1/16 т = 9/128 12000 VOOO 70000 ( 9000 % 8000 'n 7OOO \ 6000 5000 4000 3000 2000 WOO 0,1464 08536 45 {? /6 UUU 11000 10000 9000 8000 7000, 6000 5000 4000 3000 2000 WHO \ \ \. \ 4 - /"'~Ж 0,1464 0,8536 0,37060,6294 0,9830 0,0170 0,3706 0,6294 0,9830 г-—*- z —»- Рис. 87. Зависимость kn (x, z) от априорной вероятности z. 6000 5000 к 3000 ^2000 WOO 01464 078536 6000 5000 \ 4000 ^ 3000 ^ 2000 1000 А1=0 0,1464 Ц8536 0,017 0,3700 0,6294 0,9830 0,017 0,3706 0,6294 0,9836 Рис. 88. Зависимость kn(x% z) от априорной вероятности г.
364 ЧИСЛЕННЫЕ РЕЗУЛЬТАТЫ [ГЛ. IX мы получим функциональные уравнения kx (х, z) = min {[zpi + A — z)pt\ xl -f (924) = min {[zpx + A *)/>] kN (x z)\ fN + [z A- Pi) + A - z) A - ft)] *;v_i (¦*-, *-)}. ] Графики на рис. 87 и 88 показывают зависимость kn (x, z) от z при различных TV и х. Использовались следующие зна- значения параметров: а = 7/8, ? = 1/16, /# = 9/128, а область из- изменения х ограничивалась интервалом f—j^x^ j). Для сохранения интервала по х фиксированным от шага к шагу использовался тот же метод, что и выше. КОММЕНТАРИИ И БИБЛИОГРАФИЯ Материал, содержащийся в этой главе, взят из диссертации Ма- санао Аоки (М a s a n а о А о k i, Ph. D. Thesis Department of En- Engineering, University of California, Los Angeles, I960).
ГЛАВА X ЛИНЕЙНЫЕ УРАВНЕНИЯ И КВАДРАТИЧНЫЕ КРИТЕРИИ 1. ВВЕДЕНИЕ В предшествующих главах внимание было сосредоточено в основном на получении достаточно целенаправленных вы- вычислительных алгоритмов. Нашей целью была выработка ме- методов, которые приводили бы к численным решениям неза- независимо от конкретных структурных свойств индивидуальных задач. Однако, как постоянно подчеркивалось ранее, в боль- большинстве случаев трудности, связанные с размерностью, огра- ограничивают возможность прямых подходов. Следовательно, здесь требуется определенная изобретательность. Для получения подходящего аппарата или более быстрых и более эффек- эффективных методов мы должны сочетать специфические анали- аналитические свойства рассматриваемого процесса и подход с по- помощью функционального уравнения. Как мы видели, во многих случаях, когда описывающие процесс уравнения линейны и критерии квадратичны, можно получить вычислительные процедуры, которые гораздо лучше процедур, даваемых обычными классическими методами. Это имеет место, несмотря на тот факт, что классические вариа- вариационные уравнения линейны, в то время как уравнения, по- получаемые при использовании метода динамического програм- программирования, нелинейны. Эти результаты, конечно, важны сами по себе. К тому же они служат в качестве важных этапов в цепи последо- последовательных приближений к решению более сложных задач. Наконец, такие же методы применимы к стохастическим и
366 ЛИНЕЙНЫЕ УРАВНЕНИЯ И КВАДРАТИЧНЫЕ КРИТЕРИИ [ГЛ. X адаптивным процессам управления, где обычные методы ока- оказываются вообще бесполезными. В основном в этой главе мы будем просто перечислять результаты, отсылая читателя для более подробных сведений к первоисточникам. 2. ЗАДАЧА СГЛАЖИВАНИЯ Для того чтобы проиллюстрировать в элементарных тер- терминах аналитический аппарат, который будет неоднократно использоваться в различных контекстах, вернемся к про- процессу «сглаживания», рассмотренному в главе III. Предположим, что мы хотим определить значения x-v об- обращающие в минимум функцию Q(Xi, х2, . . ., лгЛг) = а, (дг, ~ г У2 4- аг (х2 — x,J-f • • • . . . -f aN (Xv — *tv-iJ + btx\ + b&l + . . . -\-bNxft. A0.1) Действуя обычным образом, полагаем: A0.2) для k=\9 2, . . ., W—1. Тогда, как ранее, /дг(г) = min [aN{xN- cf + bN x%*], A0.3) и для k=\, 2, ... 9 N— 1 мы имеем рекуррентное соотно- соотношение k{xk-cf +bkxl+f k+x(xk)]. A0.4) xk Таким образом, пока мы не добавили ничего нового к нашим предшествующим рассуждениям. Используем теперь то важное обстоятельство, что каждая из функций fx (с), fi(f)y ••• у fjv(c) является квадратичной функцией от с. Именно fk(c) = ukc\ . k=\, 2, ... ,N, A0.5) где uk не зависит от с. По-видимому, проще всего это показать методом индукции. Результат, очевидно, верен для k = N> а соотношение A0.4) показывает, что эта струк- структура сохраняется.
3] ОБСУЖДЕНИЕ 367 После того, как установлена формула A0.5), нетрудно получить рекуррентное соотношение, связывающее uk и wft + 1. Подставляя A0.5) в A0.4), получим уравнение uk с2 = min [ак (xk — сJ -f- bk x% -f- uk + iXk]. A0.6) хк Легко видеть, что значение хк, доставляющее минимум, равно хк = (п.лпь\п. \- A0-7) Подставляя это значение в A0.6), получим простое рекур- рекуррентное соотношение А=1, 2, ... ,N—1; A0.8) при этом _ aNbN aN + bN A0.9) Определив таким образом последовательность \ик), мы получим из A0.7) минимизирующие значения лгЛ. 3. ОБСУЖДЕНИЕ Обычные методы классического анализа, примененные к за- задаче минимизации, рассмотренной в предшествующем параг- параграфе, приводят к системе линейных уравнений Хотя обычно время, требуемое для решения системы N линейных уравнений пропорционально /V'2, особый вид матриц, увязанных с записанной выше линейной системой, позволяет
368 ЛИНЕЙНЫЕ УРАВНЕНИЯ И КВАДРАТИЧНЫЕ КРИТЕРИИ [ГЛ. X применить специальные методы, сокращающие это время. Оно становится пропорциональным N. В этом случае, если требуется только найти численное решение, использование метода функциональных уравнений не дает никаких особых преимуществ. 4. БОЛЕЕ СЛОЖНАЯ ЗАДАЧА СГЛАЖИВАНИЯ Предположим, чго мы хотим минимизировать функцию Q(xi} xi9 ... , xN) = а, (х{ — erf -f a2 (x2 — 2x{ + ctf + ^Ь2х;+ ...+bNx%. A0.11) Вводя последовательность функций (xk+l--2xk~l-ci)*-{- ... A0.12) мы получим рекуррентное соотношение fa (с\ у сд = min [ak (*k — c\f + xk ]y A0.13) k=\, 2, ... , N— 2, причем fN. i(^i> ct)= min Теперь методом индукции легко показать, что fk (cv сд = llk c\ + 2^ сх с2 + ©'д, г32, А=1, 2, ... , N— 1. A0.15) После получения этого результата нетрудно вывести, как и выше, рекуррентное соотношение, связывающее тройку К> vk, wk] с
5] СЛАБО СВЯЗАННЫЕ СИСТЕМЫ 5. СЛАБО СВЯЗАННЫЕ СИСТЕМЫ 369 Рассмотрим теперь обобщение линейной системы A0.10) «п *i 4" «12 X* + «13 *а = с\ > «21 Xi 4" «22 Х.г 4" «23 Х$ = С.г у «31 *1 4~ «32 *2 4" «33 *3 + Ь{ Xi = СЪ 4- «44 *4 4~ «45 *5 -f fl46 *6 = Q, «Я4 АГ4 4~ «55 ХЪ + а3E ДГб = Г3, 4- «6S ^3 + «06 *6 + ^> -^7 = С^ 1 -^3,V — 3 ~T~ asx — 2, ЗЛГ — 2 X3IV — 2 I" ЛГ -2, 37V— 1 "*3.V—1 I 3N-2, 3,V ^3,V i 4" U3N- 1, 3iV ХЗЛ^ ==: r37V- 1, a 3N, 3N -2 ^З.У —2 I a3N, 3N - 1 X3N - 1 l ! U3N, 3N X3N C A0.16) 3N. Системы этого типа возникают при рассмотрении эко- экономических и механических систем, в которых имеется лишь небольшое число связей между различными подсистемами. Используем теперь кое-что из теории матриц — по су- сущее 1ву только обозначения. Введем матрицы Л W= 1, 2, 3, A0.17) и векторы k X 3*-2 A0.18) Предположим, чго матрица линейной системы A0.16) по- положительно определенна. Тогда решение линейной системы сводится к решению задачи определения минимума неодно- неоднородной квадратичной формы ,_а. A0.19)
370 ЛИНЕЙНЫЕ УРАВНЕНИЯ И КВАДРАТИЧНЫЕ КРИТЕРИИ [ГЛ. X Введем последовательность функций {fN(z)}, —оо<^ <^z<^oo} N=\, 2, ... , определяемых соотношением = mini" 2 (**> AiA -2 A0.20) Тогда мы получим рекуррентное соотношение fN (z) = min [(дг^ ANxN) RN где RN — трехмерная область — оо <x3N, хш_ {,хш_2< оо. Легко установить индукцией, что каждая функция fw(z) является квадратичной функцией от z: fN & = un + 2 V + ^г2. A0.22) Используя A0.21), нетрудно вывести рекуррешные соотноше- соотношения для uky vk и wki аналогичные полученным выше. Ис- Использование этого метода при рассмотрении общего случая, когда матрицы Аь имеют различные размеры, не вызывает затруднений. 6. ХАРАКТЕРИСТИЧЕСКИЕ ЧИСЛА Задачу нахождения нетривиальных решений уравнения н" + >'?@« = 0, !,(()) = ,/(!) = о, A0.23) можно рассматривать, при разумных предположениях относи- относительно ср(^), как задачу определения относительных миниму- минимумов функционала 1 :\iir2dt A0.24) о при ограничениях \ (Ь)
в] ХЧРЛКТЕРИСТЙЧЕСКИЕ ЧИСЛА 371 Рассмотрим только задачу определения абсолютного мини- минимума, наименьшего характеристического числа упомянутой выше задачи Штурма — Лиувилля. Дискретным аналогом поставленной выше вариационной задачи является задача минимизации квадратичной формы Q(xh х%, ... , xN) = (хг — cf + (х% — xtf -f ... + + (**--*tf-i)9 + *k A0-26) при ограничении N Предположим, что 0 <^ a ~<; cpf ^ b <^ oo при всех /, и вве- введем последовательность функций {fk{c)}> k—l, 2,..., N— 1, определяемых соотношением fu (с) = min [(хк — cf + (*k+i — *k)* + • - • N-xN_l)* + JN], A0.28) где xk подчинены условию l=l- A0-29) Легко видеть, что fN_](c)= min [(Хлг_1_^ + ^], A0,30) где и } = min \(xk — i ** L (с) = min I (хк - c)« + A - с?, х2.) а X _ I, A0.32) где срл x2k ^ 1. Значение f{ @) есть приближение к наименьшему харак- характеристическому числу уравнения Штурма—Лиувилля.
372 ЛИНЕЙНЫЕ УРАВНЕНИЯ И КВАДРАТИЧНЫЕ КРИТЕРИИ [ГЛ. X 7. СТОХАСТИЧЕСКОЕ СГЛАЖИВАНИЕ Рассмотрим теперь вкратце стохастический вариант задачи сглаживания, о которой речь шла в § 2. Предположим, что мы хотим минимизировать математическое ожидание функции Л' Q (х, у) = 2 М + bix% A0.33) где xi + l = dixi-{-yi-\-ri1 1 = 0, 1, 2,...,7V—1.A0.34) Здесь гi — независимые случайные величины с заданными рас- распределениями. Положив для А= 1, 2, ... , N— 1 \ l A0.35) i = k где xk_l = cf имеем: ] A0.36) для A=l, 2, ... , TV— 1 и /*(') = V- A0-37) Легко показать с помощью индукции, что каждая функ- функция/л (с) — квадратичная функция от с, A0.38) а затем получить рекуррентные соотношения, аналогичные полученным в § 2. 8. ЛИНЕЙНЫЕ ПРОЦЕССЫ УПРАВЛЕНИЯ С КВАДРАТИЧНЫМИ КРИТЕРИЯМИ - ДЕТЕРМИНИРОВАННЫЙ СЛУЧАЙ Рассмотрим задачу определения вектора управлений v (t), минимизирующего квадратичный функционал г l(v) = X\v4t-\-u(T)\ A0.39) о
9] стохастический случай 373 где и и v связаны соотношением A0.40) Рассмотрим дискретный случай. Мы хотим минимизировать квадратичную форму N-\ QN(v) = u% + X^v] A0.41) i = 0 по всем vk, когда uk и vk связаны соотношением uk+i = auk + vk9 * = 0,1,... , N— 1, щ=*с. A0.42) Полагая fN(c) = minQN(v), A0.43) V имеем и для N=2,3, ... A0.45) Используя тот факт, что каждая функция в последова- последовательности {fk (с)} является квадратичной функцией от cyfk (c) = = uk-\-2vkc-\-wkc'i> можно быстро получить рекуррентные соотношения для uk> vk и wk. 9. СТОХАСТИЧЕСКИЙ СЛУЧАЙ Аналогично для величин uk, vk> связанных соотношением + гл, щ = с, A0.46) где {rk} — последовательность случайных величин с задан- заданными распределениями, рассмотрим задачу минимизации мате- математического ожидания квадратичной формы Обозначив A0.47) A0-48)
374 ЛИНЕЙНЫЕ УРАВНЕНИЯ И КВАДРАТИЧНЫЕ КРИТЕРИИ [ГЛ. X где минимизация производится по всем политикам управления с обратной связью, получим, как и выше, , A0.49) где Q(r) — функция распределения для г0. Нетрудно убедиться, используя метод индукции, что каж- каждый элемент последовательности \fk{c)) является квадратич- квадратичной функцией от с, fk (с) = uk -{- 2vkc -j- wkc2f A0.50) и снова получить рекуррентные соотношения для коэффициен- коэффициентов. Аналогичные результаты можно получить для адаптивного случая. Ссылки помещены в конце главы. 10. ПОНИЖЕНИЕ РАЗМЕРНОСТИ В предыдущей главе мы указывали, что задачу минимиза- минимизации функции g(x{(T), x%(T), ..., xk(T)) по всем функциям y(t), удовлетворяющим уравнению ^=Ах-\-у, х@) = с, A0.51) можно рассматривать в терминах функций от k переменных, независимо от размерности х. Покажем теперь, что задача существенно упрощается, если g— квадратичная функция сво- своих аргументов. Решение уравнения A0.51) имеет вид х = eAt с + \е m~s) у (s) ds. A0.52) о Следовательно, задача сводится к минимизации т n 0 ;==! i? (Ю.53) О где постоянные с\ и функции Pij(s) известны.
И] ЛИНЕЙНАЯ ТЕОРИЯ ПРЕДСКАЗАНИЯ 37Й Введя новые функции f(c[, C2, ... , c'ky 7) = ming-, A0.54) легко увидеть, что /—квадратичная функция от с\. Если допустить, что Т непрерывно, то функциональное уравнение (8.54) приводит к системе дифференциальных уравнений для коэффициентов gij(T) в выражении к /= ^gijWcic'j. A0.55) В случае дискретного Т получится система нелинейных рекуррентных соотношений. 11. ЛИНЕЙНАЯ ТЕОРИЯ ПРЕДСКАЗАНИЯ Линейная теория предсказания Колмогорова и Винера приводит к задаче минимизации квадратичной формы N М по всем вещественным значениям ик, где аи и Ък — заданные вещественные числа. Предположим, что а_г = 0, г^\ и что N^>M. Поскольку прямой подход приводит к решению системы линейных уравнений, мы хотим предложить метод, основанный на аппарате функциональных уравнений, позво- позволяющий обойтись без этого. Итак, рассмотрим задачу минимизации квадратичной формы N М где rk — сначала независимые случайные величины, потом коррелированные случайные величины такие, что распреде- распределение гк зависит только от гк_1} а затем случайные величины с неизвестными распределениями, подлежащими определению из наблюдений.
376 ЛИНЕЙНЫЕ УРАВНЕНИЯ И КВАДРАТИЧНЫЕ КРИТЕРИИ [ГЛ. X 12. ДЕТЕРМИНИРОВАННЫЙ СЛУЧАЙ Минимум величины DN M по всем ик есть квадратичная форма относительно bk, NM = (b>QNMb)> A0-58) где QN м — симметричная неотрицательно определенная ма- матрица порядка (N-{- 1) X (N+ 0» заданная для N^>M^Q, а Ъ — (N-\- 1)-мерный вектор-столбец с компонентами Ьо>Ъь ...,^дг. Запишем A0.58) в виде min dn м = min К*о — "о «оJ + Oi — Щ ai — Щ ^оJ + « ' 1«0. «1 tlN] + ---Jr(bN~u{iaN — uiaN_{ — ... — uMa,f}. A0.59) Если щ выбрано, мы видим, что получается аналогичная за- задача определения щ, иъ ..., им, где (а) Ь1 заменено на Ь{ — щ aif /=1,2,..., Ny (b) M заменено на Ж— 1, (c) yV-f" 1 заменено на N. A0.60) Следовательно, в терминах функции, определяемой ра- равенством A0.58), имеем: = min [(ft0 — ща0)* + (b* — ща\ QN_{ M_x(b' — ща*))], A0.61) «о где bf и d — теперь TV-мерные векторы с компонентами соответственно а{} аъ ..., aN и Ьъ Ьь..., bN. Положим Тогда A0.61) принимает вид (*» Ол' Ж6) = min (* — U*a> PNM(b — M). (Ю.63) «о и легко видеть, что
14] корреляция 377 при минимизирующем выборе и0, задаваемом равенством Таким образом, мы получаем рекуррентное соотношение, связывающее QNм с QN_X M_v Итерируя это соотноше- соотношение М раз, приходим к задаче минимизации формы N-M ~ A0.66) по и0, имеющей весьма простое решение. Исходя из этого решения, с помощью рекуррентного соотношения A0.63) по- получаем решение исходной задачи. 13. СТОХАСТИЧЕСКИЙ СЛУЧАЙ Рассмотрим теперь задачу определения минимума A0.57), когда rk — независимые случайные величины с одинаковой функцией распределения Q(r). Тогда, обозначив (b>QNMb)+2(b>4NM)+PNM=m{nE{~-}> О0'67) и г мы получим рекуррентное соотношение = min | \ {(b0 — ща, + r0J dQ(r0) -\-(b — ща, QN_X M_X "o _XtM_}}\. (Ю.68) Из этого соотношения можно легко получить рекуррентные соотношения, как это сделано выше. 14. КОРРЕЛЯЦИЯ Положим теперь r^ = z и запишем: = min fE {S (** + rk -2 «iа*-/I}]- (Ю.69)
378 ЛИНЕЙНЫЕ УРАВНЕНИЯ И КВАДРАТИЧНЫЕ КРИТЕРИИ [ГЛ. Тогда аналогом A0.68) будет: (Ь, QN -f (b — uoa, QN_lM_i (r0) (b — ноа)) -[- 2 (b - »,„*, ?„_, Л1_,(г0)) +pN_XM_i (re)} tfG(r0, г)], A0.70) откуда снова можно получить рекуррентные соотношения. 15. ТЕОРИЯ ПРЕДСКАЗАНИЯ С АДАПТАЦИЕЙ Рассмотрим теперь случай, когда процесс протекает сле- следующим образом. Сначала выбирается и0, затем наблюдается bo-\-ro. Далее выбирается щ и наблюдается b{-}-ri и т. д. Предположим, что последовательности \ak) и \bk) известны. На основе наблюдений над ro,rh ... мы выводим распреде- распределение rk. Это есть адаптивный процесс, описанный в § 29 главы VIII. Чтобы проиллюстрировать аппарат, которым мы будем пользоваться при решении задач такого рода, рассмотрим простой случай, когда предполагается, что каждое rk прини- принимает только значения ± 1 соответственно с вероятностями р и A—р), причем р неизвестно. Пусть G(p) — заданное апри- априорное распределение р. Предполагаем, что после наблюдения т значений -|- 1 и п значений — 1 мы принимаем в качестве нового априорного распределения \ndQ(p\ 00-71) рт A - Р)п dG (p) Обозначим N М nm (m,n) = min \E\%[bk + rk - ? иЛ.Л| A0.72)
15] ' " КОММЕНТАРИИ И БИБЛИОГРАФИЯ 379 предполагая, что мы уже наблюдали т раз -f-1 и п раз — 1. Тогда рекуррентное соотношение f(N,M\ m9n\b) = = min [pmnf(N— \,M— 1; /я-f-l,/*; Ь — ща)-\- «0 + 0—РтЛ)/(^— 1.Л4—1; /и,л+1; ft —iioa)] A0.73) позволяет нам получить рекуррентные соотношения, как и выше, для матриц QNм> векторов qNM и скаляров pNM Вероятность ртп вычисляется по формуле 1 = \ Pd-Gmn- A0.74) о КОММЕНТАРИИ И БИБЛИОГРАФИЯ § 1. Ряд результатов этой главы вместе с другими результатами аналогичного характера и дополнительными ссылками можно найти в книге: R. Bellman, Introduction to Matrix Analysis, McGraw-Hill Book Co., Inc., New York, 1960, Chapter 9. Кроме того, они включены в упражнения книги «Динамическое программирование». § 5. Аналогичный аппарат можно применять при изучении за- задач линейного программирования, в которых матрица коэффициен- коэффициентов имеет почти блочно-диагональную форму. См. статью: R. Bellman, On the computational solution of linear program- programming problems involving almost block diagonal matrices, Management Science, vol. 3, 1957, pp. 403—406. § 9. Подробное рассмотрение задач такого рода можно найти в книге: R. В е с k w i t h, Analytic and Computational Aspects of Dynamic Programming Processes of High Dimension, Jet Propulsion Laboratory, 1959. § 10. Дальнейшие результаты имеются в статье: R. Bellman and R. К а 1 a b a, Reduction of dimensionality, dyna- dynamic programming and control processes, J. Basic. Engr., vol. 83, 1961, pp. 82—84.
380 ЛИНЕЙНЫЕ УРАВНЕНИЯ И КВАДРАТИЧНЫЕ КРИТЕРИИ [ГЛ. X § 11. Вопросы обоснования задачи и подхода к ней другими мето- методами освещены в работе: N. L e v i n s о n, Appendix to N. Wiener, Extrapolation, Inter- Interpolation and Smoothing of Stationary Time Series, Technology Press and John Wiley and Sons, New York, 1949. Описанный здесь аппарат заимствован из статей: R. Bellman, Dynamic Programming and Mean Square Deviation, The RAND Corporation, Paper Р-П47, September 13, 1957. R. Bellman, Dynamic Programming and Linear Prediction Theory, The RAND Corporation, Paper P-2308, May 16, 1961. Систематическое развитие этих идей и дальнейшие результаты даны в работе: R. Е. К а 1 m a n, New Methods and Results in Linear Prediction and Filtering Theory, RIAS, Technical Report 61-1, 1960. ДОПОЛНИТЕЛЬНАЯ ЛИТЕРАТУРА А. А. Фельдбаум, О синтезе оптимальных систем с помощью фазового пространства, Автоматика и телемеханика, т. 16, № 2, 1955. Р. В. Гамкрелидзе, Теория оптимальных по быстродей- быстродействию процессов в линейных системах, Изв. АН СССР, серия матем., 22, № 4, 1958.
Г Л А В А XI МАРКОВСКИЕ ПРОЦЕССЫ РЕШЕНИЯ 1. ВВЕДЕНИЕ Как показано на предыдущих страницах, процессы дина- динамического программирования могут принимать различные фор- формы. Мы изучали процессы, в которых переменные, описы- описывающие политику, могут принимать дискретное множество значений, и процессы, где они могут принимать континуум значений. Иногда область допустимых решений ограничива- ограничивалась дополнительными условиями. Параметры состояния, описы- описывающие систему, были как дискретными, так и непрерывными, а сами процессы — как детерминированными, стохастическими, так и адаптивными. В первых девяти главах дан единый вычислительный алго- алгоритм, одинаково применимый к линейным и нелинейным кри- критериям, к детерминированным и стохастическим процессам. Будучи общим методом, он не нуждается в перекройке для применения к конкретному процессу. В главе X показано, как можно, воспользовавшись конкретной аналитической струк- структурой задачи, дать вычислительные алгоритмы более простые, чем даваемые классическими методами или прямым методом динамического программирования. На последующих страницах мы намерены описать не- несколько дополнительных способов, позволяющих воспользо- воспользоваться индивидуальной аналитической структурой задачи опти- оптимизации для существенного упрощения ее численного реше- решения. Во многих случаях задачи оптимизации разрешимы во
382 марковские процессы решения [гл. xi всей общности только при использовании этих более тонких и искусных методов. Сначала мы хотим рассмотреть некоторые задачи, занима- занимающие привилегированное место в динамическом программи- программировании, а по существу и в математическом анализе. Сюда относятся задачи, которые обладают некоторыми чертами ли- линейности. В искусстве построения математических моделей одной из наиболее трудных является задача уравновешивания реали- реалистического описания и мощности существующего аналитиче- аналитического и вычислительного аппарата. Довольно часто упрощен- упрощенные до бессмысленности задачи решаются тщательным образом, в то время как чрезмерно сложные процессы остаются без внимания, причиной чего являются математические трудности. Несмотря на некоторую опасность построения линейных моделей для задач реального мира, трудно отказаться от эстети- эстетического наслаждения, которое дает получение точных реше- решений. Примирение этих двух сторон — один из камней прет- преткновения при построении моделей. Численные результаты этой главы основаны главным обра- образом на работе Р. Ховарда. Многие дальнейшие результаты можно найти в его книге, упомянутой в конце главы. 2. МАРКОВСКИЕ ПРОЦЕССЫ Прежде чем говорить о марковских процессах решения — частном случае секвенциальных процессов решения, которые мы хотим рассмотреть в этой главе, — необходимо пояснить, что такое процесс Маркова, Рассмотрим систему, которая в любой фиксированный мо- момент времени может находиться в одном из конечного числа состояний, которые мы перенумеруем числами /= 1,2,... , А/, и предположим, что в дискретные моменты времени ^ = 0,1,... система переходит из одного из этих состояний в другое. Далее, пусть процесс перехода происходит не детерминиро- ванно, а стохастически и управляется переходной матрицей P = (Pij)> гяе Pij — вероятность того, что система в момент t-\-\ на- находится в состоянии у, если известно, что в момент t (H«l) она была в состоянии /.
3] МАРКОВСКИЙ ПРОЦЕСС РЕШЕНИЯ 383 Мы рассмотрим здесь важный случай, когда переход- переходная матрица Р не зависит от времени. Это — наиболее инте- интересный случай. Введем следующие функции: xt @— вероятность того, что система в момент t на- ... ходится в состоянии г, / = 1> 2, . .., TV, где предполагается, что t принимает только значения 0,1,... Тогда элементарные правила теории вероятностей приводят к уравнениям n xt,x(j) = y2Lpi.xt(i)y у=1,2,... ,;V, A1.3) Теория марковских процессов посвящена изучению асим- асимптотического поведения функций х( (/) при t — оо. Если все переходные вероятности р.. положительны, то не составляет большого труда доказать, что эти функции сходятся при i — оо к величинам хA), удовлетворяющим уравнению «стационар- «стационарного режима» n ¦*(/) = 2/>//*(')> У=1> 2, . . . , М A1.4) /=i Сходимость этих функций при t — оо, по-видимому, не является слишком неожиданной, если принять во внимание свойство перемешивания, содержащееся в условии, что все рц положительны. Неожиданным же в этом случае является тот факт, что предельные значения не зависит от первона- первоначального состояния системы, т.е. от значений хоA). Именно эта математическая идея объясняет необходимость тщательного тасования карт. Действительно, чаще всего та- тасование делается довольно небрежно, и при игре в бридж большую информацию о картах противника можно получить, помня взятки при предыдущей сдаче. 3. МАРКОВСКИЙ ПРОЦЕСС РЕШЕНИЯ Теперь мы хотим перенести понятие марковского процес- процесса на более общие ситуации, в которых решения принима- принимаются на каждом шаге. Предположим, что на каждом шаге в качестве переходной матрицы может быть выбрана одна из
384 МАРКОВСКИЕ ПРОЦЕССЫ РЕШЕНИЯ [гл. XI множества таких матриц, и обозначим матрицу, соответству- соответствующую политике q, через Р(д) = (Ри(д))- Предположим далее, что меняется не только состояние на каждом шаге, но также и доход, который является функ- функцией начального и конечного состояний и решения. Пусть R (q) = (rij(q)) означает соответствующую матри- матрицу доходов. Процесс такого типа называется марковским процессом решения. Мы хотим рассмотреть здесь задачу о выборе по- последовательности решений, максимизирующих математическое ожидание дохода, получаемого в jV-шаговом процессе, при заданном начальном состоянии системы. 4. ПРИМЕР-ЗАДАЧА О ТАКСИ Прежде чем перейти к аналитическому рассмотрению за- задач такого рода, посмотрим, как весьма естественным обра- образом они возникают. В качестве иллюстрации дадим упрощен- упрощенный вариант операции пробега такси. Удобство примера такого рода состоит в том, что он позволяет нам придать конкретный смысл таким понятиям, как «переходная матрица», «альтернативные решения» и т.д. Предположим, что водитель такси обслуживает окрест- окрестности трех городов. Если сн находится в городе /, то перед ним стоят три альтернативы. A) Он может курсировать в надежде, что его остановит пассажир. B) Он может подъехать к ближайшей стоянке такси и ожидать в очереди. C) Он может включиться в радиосеть и ожидать вызова по радио. В городе 3 он имеет такие же альтернативы, а в городе 2 последняя альтернатива отсутствует, так как в этом городе нет обслуживания пассажиров с помсщью радио. Для каждой фиксированной альтернативы в каждом го- • роде задаются вероятности того, что следующая поездка про- произойдет в любой из городов /, 2 и 3, и соответствующие известные доходы в денежных единицах, связанные с каждой поездкой. Поскольку каждой альтернативе соответствуют раз- разные совокупности клиентов, вероя!ности перехода и доходы зависят от альтернатив.
ПРИМЕР ЗАДАЧА О ТАКСИ 385 Если им приписать некоторые гипотетические числа, то данные задачи можно записать в виде таблицы 11.1. Состояние (юрод) 1 2 3 Альтерна- Альтернатива 1 2 3 1 2 1 2 3 Переходная 1 2 1 16 1 4 1 1 Тб 1 7 1 8 3 7 вероятность 2 1 7 3 4 1 "8 0 7 1 7 3 7 1 16 3 1 4 3 Тб 5 ? 1 ~2 1 16 1 " 1 "8" 3 Гб Та i= \ 10 8 4 14 8 10 6 4 блиц Доход 2 4 2 6 0 16 2 4 0 а 11.1 3 8 4 4 18 8 8 2 8 Поясним таблицу на примере предпоследней строки. Из нее видно, что, если водитель находится в городе 3 и выби- выбирает вторую альтернативу, то с вероятностью одна восьмая попадется клиент, желающий поехать в город /, причем до- доход от этого равен 6; с вероятностью три четверти произой- произойдет поездка в город 2, дающая доход 4, и с вероятностью одна восьмая произойдет поездка внутри города 3 с доходом в две единицы. В этой задаче имеются три состояния, т.е. 7V=3, и три альтернативы в состояниях 1 и 3 и две в состоянии 2, т. е. я1 = 3, п.2 = 2, п3 = 3. Значит, имеется 3-2-3=18 возмож- возможных политик. После того как будут изложены методы решения, мы вернемся к этой задаче и продемонстрируем ее численное решение. х/412 Р. Беллман, С Дрейфус
386 МАРКОВСКИЕ ПРОЦЕССЫ РЕШЕНИЯ [ГЛ. XI б. АНАЛИТИЧЕСКАЯ ФОРМУЛИРОВКА Используем теперь аппарат функциональных уравнений для получения аналитической формулировки задачи, постав- поставленной в § 3. Пусть для / = 1, 2, ..., А/; п = 0, 1, ... fn(i)—ожидаемый доход при я-шаговом процессе, если начать из состояния i и использовать оптимальную политику. О 1-5) Заметим, что п означает длину процесса, тогда как t> используемое в предшествующих параграфах, означало время. Тогда принцип оптимальности приводит к рекуррентным соотношениям U @ = шах Г V PiJ (q) (ги (?)+/„_! (/))], A1.6) для /1=1, 2, ... и-/0@ = 0; /=1,2, ... , N. Оптимальная политика задается вектором (#n(l), qn B), ... ... , qn{N)), определяющим выбор, который надлежит сде- сделать в /-м состоянии, когда осталось п шагов. 6. ВЫЧИСЛИТЕЛЬНЫЕ АСПЕКТЫ Хотя в дальнейшем будут приведены численные резуль- результаты для задачи этого типа, возникающей при рассмотрении процесса замены оборудования, сделаем уже сейчас некото- некоторые общие замечания. Проведение вычислений усложняется не столько загруз- загрузкой памяти значениями последовательности {/„(/)}• и {qn(i)\> которой можно пренебречь, сколько необходимостью хра- хранить переходные матрицы P(q) = (j>ij(q)) и R (q) = (riV(^)). Если N превышает, например, 1000, то трудности ста- становятся практически непреодолимыми. Чтобы иметь возмож- возможность рассматривать задачи действительно крупного масштаба, необходимо изучить аналитическую структуру процесса и использовать полученную таким путем информацию для раз- разработки приближенных методов. Мы будем использовать линейность процесса и простую, но очень важную идею, что подходящим образом определенный идеализированный бесконечный процесс дает превосходное приближение к
7] АСИМПТОТИЧЕСКОЕ ПОВЕДЕНИЕ 387 процессу даже умеренной длины. Однако для изучения не- неустановившегося состояния необходима точная постановка задачи. 7. АСИМПТОТИЧЕСКОЕ ПОВЕДЕНИЕ Приближенные методы, которые мы будем использовать, существенно зависят от асимптотического поведения последо- последовательности {/„(/)} при п -> со. Сформулируем следующий результат. Теорема 1. Рассмотрим рекуррентное соотношение L . 7) где предполагается, что (с) • 0 и bj (q) > 0 для некоторого j и всех q, г d > 0, ij = 1, 2, ... , М равномерно по q, Е aif(q)=\, ? = 1, 2, ... , М. A1. 8> Иными словами, A (q) при каждом q есть транспониро- транспонированная матрица по отношению к положительной мар- марковской матрице. Допустим также, что либо (a) функции bt (q) и аи (q) являются функциями ко- конечномерного вектора q, компоненты которого предпола- предполагаются принимающими только конечное множество зна- значений, в общем, зависящее от i и /, либо (b) функции bt(q) и aij(q) — непрерывные функции ко- конечномерного вектора q, чьи компоненты принимают зна- значения в некоторых замкнутых ограниченных обла- областях q-пространства. Положим I 1 1 . ьЛя)
388 МАРКОВСКИЕ ПРОЦЕССЫ РЕШЕНИЯ [ГЛ. XI Тогда при п — оэ fn(Q~nr, i=l, 2, ... , N, A1.10) где скалярная величина г определяется соотношением Доказательство этого результата имеется в статье, упо- упомянутой в библиографии в конце главы. Величина bt (q) есть математическое ожидание дохода на каждом шаге, обу- обусловленного решением q. Результат интуитивно ясен, так как он утверждает, что мы действуем таким образом, чтобы максимизировать средний ожидаемый доход. 8. ОБСУЖДЕНИЕ Значение этой теоремы заключается в том, что она гаран- гарантирует нам корректность очевидного метода определения оп- оптимальной политики. Именно, мы выбираем конкретную поли- политику и используем ее повторно для получения среднего выиг- выигрыша. Затем мы выбираем политику, максимизирующую этот средний выигрыш. С установлением этого результата был открыт путь для ряда простых итеративных методов, которые могут быть ис- использованы более эффективным образом для получения по- политики в процессе большой длительности. Как и в теории цепей Маркова, имеется существенная раз- разница между аналитическими результатами в случае положи- положительных коэффициентов и результатами, справедливыми толь- только для неотрицательных коэффициентов. В большинстве при- приложений часто бывает так, что большая часть коэффициентов равна нулю. Существует несколько путей обхода этой труд- трудности. Во-первых, можно итерировать матрицы несколько раз, пока не исчезнут нули. То обстоятельство, что переходная ве- вероятность не равна нулю, означает, что на любом конкретном шаге имеется путь перехода из 1-го состояния в у-е состоя- состояние. А факт, что все элементы некоторой итерированной мат- матрицы положительны, означает, что имеется возможность пере- перехода из /-го состояния в /-е состояние не более, чем через некоторое фиксированное число шагов.
9] МЕТОД ХОВАРДА 389 В большинстве приложений это в действительности и имеет место. Если же дело обстоит не так, то это обычно служит признаком какого-то объединения двух разных процессов в один процесс ценой потери простоты. Вторым путем обхода многих тонких вопросов, возника- возникающих при рассмотрении цепей Маркова с нулевыми элемента- элементами переходной матрицы, является замена этих нулей малыми величинами. Очевидно, если исходный физический процесс имеет смысл, то малые изменения в переходных вероятностях внесут пренебрежимый эффект в поведение в целом. Получив таким путем переходную матрицу с положительными элемен- элементами, мы можем затем использовать соответствующую простую теорию. 9. МЕТОД ХОВАРДА ИТЕРАЦИИ В ПРОСТРАНСТВЕ ПОЛИТИК Итеративный метод в пространстве политик, основанный на предшествующих идеях, детально разработан Р. Ховардом. Мы рассмотрим его метод, который дает оптимальную поли- политику для процессов большой длительности (т. е. «стационар- «стационарных процессов»), где решения зависят только от состояния, а не от номера шага. Мы будем применять обозначения Р. Ховарда для того, чтобы легче было ссылаться на его работы. Если определить VI как математическое ожидание суммарного дохода при «-шаговом процессе, начинающемся в состоянии ё, при использовании фиксированной политики, то легко видеть, что V удовлетворяет рекуррентному соот- соотношению vf =!>«('«+vr1). AU2> Для больших п также имеет место равенство V A1.13) если в