This is corresponds to Chapter 1.4 of SICM (Structure and Interpretation of Classical Mechanics).
Although SICM doesn't expose the underlying optimization method in the library interfaces. The path is represented as polynomial. I'd have to check if they also do gradient descent.
I don't know if I ever put the code online, but I did something similar a few years back for a bow deflection solver using Hooke's law and finite elements. I was planning to solve for arrow speed as well but never got around to it. I've kept the technique in my box of tools, though, because it's conceptually simpler for me to set up an optimization problem than it is an ode solver. Very cool write up.
constantcrying 4 days ago [-]
>Some, like the double pendulum or the three-body problem, are deterministic but chaotic. In other words, their dynamics are predictable but we can’t know their state at some time in the future without simulating all the intervening states.
Literal nonsense. Everything in the second sentence is false.
Deterministic means that the state at some point in time fixes the state at all future points in time. Nevertheless in a deterministic system you can know a future state without calculating intermediary states.
Chaotic means that future states are discontinuous in regards to the initial state. Nevertheless a chaotic system can be known at future states without calculating intermediary states, you can even have an analytic solution to a chaotic system. Furthermore chaotic can mean that you can't calculate future states from initial states. Numerical ODE solvers in particularly have errors which grow exponential in time. So simulating intermediate states does not give you the solution to the problem.
imtringued 3 days ago [-]
While the idea is obviously correct, the paper itself suffers from extremely sloppy writing.
They discretize the integral with a discrete sum, but then forget to discretize the variables by substituting x with x(t_i) or at least x_i, same for dot x.
They put the objective function x hat = argmin S(X) last, when it is the most important aspect.
In the equation where x hat must fulfill the Euler lagrange equation for all t, they butchered the application of the derivative with respect to a constant point.
You need to explicitly pass in the x(t), dot x (t) and t as arguments into the derivative. Their notation implies that you have to take the derivative with respect to a constant (not at a point) which always returns zero (a blatantly banal property) or that the function (=the laws of physics) behind x(t) varies over time (shudder).
Overall this was extremely unpleasant to read even though the approach is neat.
danbmil99 8 hours ago [-]
> Nevertheless in a deterministic system you can know a future state without calculating intermediary states.
Exactly wrong. See the halting problem
coderenegade 3 hours ago [-]
You know the initial conditions, the position function x(t), the velocity function v(t), and acceleration is constant. Why can't we evaluate the state at any point in time without having to calculate previous states?
frutiger 5 hours ago [-]
Isn't the halting problem about knowing all future states and not a future state?
revskill 1 hours ago [-]
Not everyone understands that problem.
froh 3 hours ago [-]
...unless the input tape also is deterministic.
"deterministic system" is not "deterministic program"
Although SICM doesn't expose the underlying optimization method in the library interfaces. The path is represented as polynomial. I'd have to check if they also do gradient descent.
https://groups.csail.mit.edu/mac/users/gjs/6946/sicm-html/bo...
Literal nonsense. Everything in the second sentence is false.
Deterministic means that the state at some point in time fixes the state at all future points in time. Nevertheless in a deterministic system you can know a future state without calculating intermediary states.
Chaotic means that future states are discontinuous in regards to the initial state. Nevertheless a chaotic system can be known at future states without calculating intermediary states, you can even have an analytic solution to a chaotic system. Furthermore chaotic can mean that you can't calculate future states from initial states. Numerical ODE solvers in particularly have errors which grow exponential in time. So simulating intermediate states does not give you the solution to the problem.
They discretize the integral with a discrete sum, but then forget to discretize the variables by substituting x with x(t_i) or at least x_i, same for dot x. They put the objective function x hat = argmin S(X) last, when it is the most important aspect.
In the equation where x hat must fulfill the Euler lagrange equation for all t, they butchered the application of the derivative with respect to a constant point.
It should look more like this:
https://wikimedia.org/api/rest_v1/media/math/render/svg/6efe...
You need to explicitly pass in the x(t), dot x (t) and t as arguments into the derivative. Their notation implies that you have to take the derivative with respect to a constant (not at a point) which always returns zero (a blatantly banal property) or that the function (=the laws of physics) behind x(t) varies over time (shudder).
Overall this was extremely unpleasant to read even though the approach is neat.
Exactly wrong. See the halting problem
"deterministic system" is not "deterministic program"