Такая задача. Есть некоторая линейная функция. Она нам известна в виде начального положения xz и скорости vz. Мы в этот момент времени находимся в точке x0 и движемся со скоростью v0 и ускорением a0=0. Мы можем менять свое ускорение в дискретные моменты времени - длительность интервала времени T. Задача - рассчитать набор ускорений a1, a2, ..., an так, чтоб через n интервалов мы пересеклись с линейной траекторией и двигались с той же скорость vz. Т.е. дальнейшее ускорение a(n+1)=0 и мы двигаемся по той же линейной траектории. n - какое получится, но желательно минимальное из возможных.
Для случая без ограничений мы можем решить задачу за два интервала времени:
a1*T+a2*T=(Vz-V0)
V0*T+a1*T*T/2+(V0+a1*T)*T+a2*T*T/2=xz+Vz*2*T-x0
Но, на нас накладываются ограничения: максимально допустимое ускорение amax и максимальная скорость vmax. Вопрос - как теперь решать задачу?