30
С. Кротов
Об оптимальных траекторных движений
Многим из вас приходилось решать задачи на определение оптимальных траекторий движения — задачи типа «определить траекторию, по которой — при определениях условий движения — из точки A в точку B можно добраться за минимальное время». В настоящее время заметке мы рассケjem о метода, позволяющим к заданному подобного рода подходить с единственным.
Начнем с простой задачи. Представим себе малчика, оказавшегося в некоторый момент времени посреднего поля в точке A. Нам известно, что из этой точки A он может перемещаться со скоростью в любом направлении (мы подразумеваем, что условия передвижения малчика из точки A одинаковы по всем направлениям). Поставим следующий вопрос: где может оказаться малчик через небольшой интервал времени ?
Будем считать, что на противженни этого интервала времени малчик, начавшийся
31
не меняет курс, и скорость его остается неизменной. В этом случае ответ оченьен: мальчик может оказаться в любой точке окружности с центром в начальном положении — в точке — и радиуса .
Предположим теперь, что мальчик в процессе движения может в любой момент времени в любой точке своей траектории мгновенно менять произвольным образом направление скорости, сохраняя ее неизменной по величины (в данном случае нам придется надельить мальчика сверхъестественной силой). И в этом случае ответ на вопрос задачи достагоно прост: так как длины всех возможных траекторий мальчика равны , конец произвольной траектории может оказаться в любой точке кругла радиуса с центром в точке . Это следует из того факта, что перемещение мальчика, то есть расстояние между началом и концем произвольной траектории по прямой, по абсцидной величины не больше длины самой траектории, равной . Таким образом, область достижимости (назовем так множество точек поля, где может оказаться мальчик к моменту времени ) будет представлять собой кругла радиуса .
Обратим внимание на то, что для любой внутренней точки области достижимости (например, точки на рисунке 1) можно указать бесконечное число траекторий, по которым мальчик мог бы в нее попасть. Для любой же точки границы области достижимости (например, точки на рисунке 1) существует единственная траектория «попадания» (в точку — по радиусу ).
Если в дальнейшем (при ) условия передвижения мальчика по полю остаются прежними, то и в последующем моменты времени границы области достижимости будут также представлять собой окружности (с центром в точке ). Границы области достижимости фронтом всевозможных перемещений, или просто фронтом. В предыдущем рассмотрении фронт представлял собой окружность, радиус которого увеличался со скоростью . Такая простая форма фронта была связана с тем, что условия передвижения мальчика из точки (и из любой точки области过剩ности) во все стороны были одинаковы. Нетрудно заметить, что и в более общем случае передвижения фронт обладает следующими свойствами:
-
рано или поздно фронт пройдет через любую точку (имеются в виду точки, куда вообще можно попасть);
-
ни при каком способе передшения нельзя оказаться dalышей фронта в соответствии момент времени;
-
для каждой точки фронта можно указать, как правило, единственный траекторию, оказывающегося в ней;
-
при определении фронта в последующем моменты времени (то есть при определении изменения фронта с течение времени) все точки исходного фронта одновременно будут выступать в роли точки , так что в любой момент времени фронт будет представлять собой огибающую множество окружностей, центры которых лежат на исходном фронте, а радиуса определяются условиями «разбегания» из соответствующих точек фронта (рис. 2);
-
возьмем два положения фронта — и , разделенные интервалом времени (см. рис. 2). Для любой точки фронта существует единственная точка фронта , в которой можно добаваться в время ; траектория движения при этом единственная. Во все другие точки фронта из точки можно добаваться лишь за большие времена.
Изложенный выше метод рассмотрения движения путем построения перемещающегося с течение времени фронта может быть с успехом применен при решении задачи определения оптимальных траекторий движения. Если
-
мы знаем, как меняется фронт с течение времени, то естьume его строить в каждой моменте времени,
-
уменьшать из всего множества траекторий движения ту, которая приводит в произвольную точку фронта, то задача определения оптимальной траектории перемещения решается следующим образом: установливаем вид фронта с течение времени, определяем момент времени, когда фронт достигнет интервалу нас точки, строим траекторию, реализующую попадание именно в эту точку фронта.
Для использования сказанного рассмотрим одну вспомогательную задачу.
Задча. Мальчик живет на берегу ОР залива МОР (рис. 3). Берега залива образуют узолл а. Дом мальчика — в точке . Расстояние от дома до берега равно , а расстояние от дома до точки (см. рис. 3) равно . Мальчик любит рыбу с берега ОМ. На каком расстоянии от точки он должен выбрать место для рыбки, чтобы добиться до этого места от дома за минимальное время? Чему
33
Рис. 6.
сторическая от которой до точки равно (). Нетрудно убедиться, что к моменту времени фронт будет представлять собой кривую , где и — касательные к полукружности радиуса . с центром в точке . Эти касательные составляют с берегом угол такой, что . (Возбше фронт будет представлять собой кривую идуг окружности радиуса () с центром в точке , лежащей на берегу. Но нас интересует только та часть фронта, которая лежит в области «река». В любой другой момент времени фронт будет подобен построению нами фронту .
Тепер пойнято, как найти оптимальный траекторию попадания (то есть траекторию попадания за наименьшее время) из точки в точку реки, находящую на расстоянии от берега. Эта траектория будет представлять собой ломанную ACB (см. рис. 5), отрезок CB которого перpendикулярен фронту, проходящему через точку . Точка — та точка берега, из которой малый должен начать плавить. Если расстояние вдоль берега от точки до точки равно , то тg .
Тепер учтем, что, по условию задачи, скорость течение реки . Как будет выглядеть фронт через время от начала движения? Очевидно, что точка фронта (см. рис. 5) останется на месте; центр полукружности радиуса сместится от точки влево (по направлению ) на расстояние . Фронт в области «река» будет представлять собой кривую (на рисунке 6 показана часть NM фронта); касательная составляет с берегом угол такой, что
По существу построение точек участка фронта мы разбиваем на два этапа: для каждой точки берега, в которой малый оказывается через время , мы строим «вспомогательный фронт» — границу той области реки, в которой малый может оказаться через время . Эта граница — полукружность радиуса с центром в точке . Затем мы смещаем эти полукружности влево (по направлению ) на расстояние, равное . касательная ко всем таким смещенным полукружностям и есть участок фронта.
Следовательно, чтобы попасть из точки в точку за наименьшее время, малый должен плавить из той точки берега, которая находится справа от точки (см. рис. 6) на расстоянии , где — время, в течение которого малый будет плавить. (Понятно, что отрезок оптимальный траектории должен быть параллелен отрезку .) Расстояние между точками и равно
Найдем длину отрезка :
из находится
(напомним, что ); таким образом
Итак, чтобы добраться до бакена за наименьшее время, малый должен плавить из точки , на расстоянии
Рассмотренный нами метод решения кinemатической задачи путем построения фронта всевозможных перемещений основывается на хорошо известной физической картине распространения возможностей в среде; фронт при этом является реальной границы той области, куда должно возмущение к данному моменту времени. Нетрудно видеть, что при отискании оптимальных траекторий мы воспользовались теоной взаимосвязью, существующей между фронтом и лучами, а именно тем фактом, что луч является линейной, по которой возмущение распространяется за наименьшее время. Приципип построения фронта, которой мы предложили, является ни чем иным, как приципипом Гойгена — методом построения фронта распространения волнового возможения.