Good day to you all!
I'm trying to implement a physics-based movement of a space ship on a 2D plane. The space ship has 3 degrees of freedom achieved with 8 thrusters: forward- and backward-facing, to the both sides and paired rotational left and right (rotational thrusters do not affect lateral movement). Each of the thrusters apply force that results in the ship having acceleration. Each of the forward, backward, side and rotational thrusters are independent and differ in force they apply. The ship, despite being in a medium without resistance, has a maximum translational and angular velocity. My task is to implement the ship to move following the time-optimal trajectory and stop at the target location.
With only translation, the implementation is easy - calculate the deceleration distance, accelerate until this distance to target, then decelerate.
When adding rotation, maximum acceleration on the axes changes. The most basic approach I could come up with is adding velocity vector to target while eliminating any velocity vector away from it. It could happen that the optimal strategy would be to accelerate until maximum speed, turn around, then decelerate using the main thruster.
Apart from the [steering behaviours](http://www.red3d.com/cwr/steer/gdc99/), are there any frameworks, SDKs, engines, open-source projects, articles I can use either as a reference or to educate myself on how to best approach solving the problem? I would greatly appreciate any tips!
Thanks!