Descargo de responsabilidad: esto es sólo una respuesta parcial a la pregunta tal y como está formulada, principalmente porque no tiene en cuenta correctamente la condición de que el punto final $\vec{p_1}$ también se prescribe. Por favor, lea las líneas inferiores. Además se supone que el problema es bidimensional.
Es bien sabido que una línea recta es el camino más corto entre dos puntos, pero sólo se puede realizar con velocidades constantes, por ejemplo, como la dada por: \begin {eqnarray*} x(t) = v_x.t + s_x \\ y(t) = v_y.t + s_y \end {eqnarray*} $\vec{s} = (s_x,s_y)$ es una posición inicial, $\vec{v} = (v_x,v_y)$ es una velocidad (constante), $t$ es tiempo .
Sustituye la relación lineal por una cuadrática. Es algo razonable suponer que nos dará la solución más eficiente con velocidades no constantes velocidades no constantes, como lo requiere el OP. \begin {eqnarray*} x(t) = \frac {1}{2} a_x.t^2 + v_x.t + s_x \\ y(t) = \frac {1}{2} a_y.t^2 + v_y.t + s_y \end {eqnarray*} Aquí $\vec{a} = (a_x,a_y)$ es el constante aceleración. La curva resultante curva es una spline cuadrático .
Se dan los puntos de inicio y final. Es fácil ver, con $T$ como el final de los tiempos: $$ \vec{p_0} = \left[ \begin{array}{c} s_x \\ s_y \end{array} \right] $$ $$ \vec{p_1} = \left[ \begin{array}{c} \frac{1}{2} a_x.T^2 + v_x.T + s_x \\ \frac{1}{2} a_y.T^2 + v_y.T + s_y \end{array} \right] $$ Se indican las velocidades inicial y final. Es fácil ver, con $T$ como el final de los tiempos: $$ \vec{v_0} = \vec{v}(0) = \left[ \begin{array}{c} v_x \\ v_y \end{array} \right] $$ $$ \vec{v_1} = \vec{v}(T) = \left[ \begin{array}{c} a_x.T + v_x \\ a_y.T + v_y \end{array} \right] $$ A partir de las dos últimas ecuaciones encontramos: $$ \frac{v_x(T) - v_x(0)}{a_x} = T \quad ; \quad \frac{v_y(T) - v_y(0)}{a_y} = T $$ Y sabemos que $\sqrt{a_x^2 + a_y^2} = 1$ . Así que vamos a definir una aceleración constante y normada: $$ \left[ \begin{array}{c} a_x \\ a_y \end{array} \right] = \left[ \begin{array}{c} v_x(T) - v_x(0) \\ v_y(T) - v_y(0) \end{array} \right] / \sqrt{(v_x(T) - v_x(0))^2 + (v_y(T) - v_y(0))^2} $$ O $$\vec{a} = \frac{\vec{v_1} - \vec{v_0}}{\left|\vec{v_1} - \vec{v_0}\right|} $$ Ahora todo está definido. Por ejemplo, el tiempo $T$ es fácil de calcular: $$ T = \frac{v_x(T) - v_x(0)}{a_x} = \sqrt{(v_x(T) - v_x(0))^2 + (v_y(T) - v_y(0))^2} = \left|\vec{v_1} - \vec{v_0}\right| $$ Pero me preocupa un poco la "aceleración normalizada". Supongamos en cambio que: $$ \vec{a} = \frac{\vec{v_1} - \vec{v_0}}{\left|\vec{v_1} - \vec{v_0}\right|} \times A $$ Dónde $A$ (un escalar) tiene la dimensión de una aceleración. Entonces: $$ T = \frac{\left|\vec{v_1} - \vec{v_0}\right|}{A} $$ tiene la dimensión del tiempo. Lo que me parece mejor, como físico :-)
Como ya se ha dicho, esta es una respuesta parcial a la pregunta. La razón es que podemos calcular la posición final ahora, en lugar de imponerla: $$ \vec{p_1} = \vec{p_0} + \frac{\left|\vec{v_1} - \vec{v_0}\right|}{A} \frac{\vec{v_1}+\vec{v_0}}{2} $$ Una de las razones por las que he vuelto a borrar este post es que parece que hay no hay otra posibilidad que el spline cuadrático si se quiere mantener una aceleración óptima constante desde el principio hasta el final. Más información sobre las splines cuadráticas se encuentra en: Splines (PDF) .