Incorrect behavior of Rendezvous Guidance
asmi84 opened this issue ยท 5 comments
Ok, something fishy is going on over there. I'm on 109x111 km orbit, my target is on 142x150, target is 217 km ahead of me. Phasing step suggests me 225x225 km phasing orbit, which clearly not needed as my current one is just perfect. So I skipped the step and went to step 3 - Hohmann transter. I've pressed the button and here is what it suggested: http://www.asmitech.com/Stuff/KSP/MJ2/MJ2_TR1.png
And this is was I think it should have suggested: http://www.asmitech.com/Stuff/KSP/MJ2/MJ2_TR2.png
Note time to maneuver (suggested 8+ hrs vs a bit less then 14 min) and dV (suggested 30.6 m/s vs 25.2 m/s).
I've skipped both first step (because I think 0.2 Rinc is small enough to press ahead with rendezvous), and second one (as mentioned above).
This isn't so much "incorrect" as "not quite optimal." I suspect that the suggested transfer orbit would work fine; it's just the second intercept window rather than the first. The way the transfer orbit timing is calculated, MJ may sometimes miss the first window in favor of the second. I'll think about whether this can be improved.
It's actually quite sub-optimal as only the change of orbit is ~ 100 m/s dV which essencially goes wasted. Given that the expectation is that MJ will suggest the most optimal trajectory, I'd say the current behavior is infact incorrect.
The phasing orbit shown is just a suggestion; as you found, it's perfectly fine to ignore it if you already have a decent one, as http://wiki.mechjeb.com/index.php?title=Manual/Rendezvous_Guidance mentions.
Well, it's up to you of course what you are up to do on this regard - I'm just expressing my thoughts on subject. The problem with current;y sugested phasing orbit is that it seems to come out of the blue, with no information given out to player on why this orbit is chosen over any other. I think in practical terms one would want to get a choice of following possible options here:
- Intercept on a single orbit - if time is critical (for example there are no solar arrays on robotic craft, and so only limited time is available). There is always a possibility to intercept target at one orbit, but it may require huge amount of dV. However if player is somewhat good at eyeballing launch timing (or capable of operating ascent autopilot :) ), this will be fastest option while still not very expensive in terms of dV expended.
- Fuel-optimal maneuver - the aim is to spend as few fuel as possible, time is not limited. In this case the most probable course of events is to not change current orbit and keep circling around until optimal transfer window shows up.
- A variant of the previous one - user is setting maximum dV budget he is ready to spend on maneuver, the MJ's task is to calculate nearest possible transfer window that fits within set budget, or to let user know that such transfer is impossible due to unsufficient dV. It actually gives a lot of flexibility to MJ because sometimes setting up phasing orbit can cut ops time considerably while still fitting within set constrains. I'm quite sure this will end up being most often used option as this gives player a predictability and allows to plan his further mission better.