Powered descent guidance — G-FOLD algorithm (convex optimization)
3.5.53· Physics › Guidance, Navigation & Control (GNC)
80/20 CORE: G-FOLD us problem ko — "minimum fuel use karte hue rocket ko pinpoint land kaise karein, bina thrust limits, glide-slope, aur physics violate kiye" — ek convex optimization mein convert kar deta hai — jise computers reliably aur fast solve kar sakte hain global optimum tak. Iska trick (Nobel-worthy move) ek change of variables + lossless convexification hai jo non-convex thrust lower bound ko hata deta hai.
The Problem (WHAT are we solving?)
WHY convex? Non-convex problems mein kai local minima ho sakte hain; ek solver ek aisi "landing" return kar sakta hai jo best nahi hai, ya descent ke dauran milne wale ~1 second mein converge karne mein fail kar sakta hai. Ek convex problem mein ek hi minimum hota hai, aur interior-point methods use guaranteed polynomial time mein dhundte hain. G-FOLD = "Guidance for Fuel Optimal Large Diverts."
Dynamics From First Principles (HOW)
State: position , velocity , mass .
Gravity (constant, planet ke paas) aur thrust ke saath Newton ka 2nd law:
Fuel thrust magnitude ke proportional burn hota hai (rocket equation, differential form). Exhaust velocity ke saath, define karo:
Villain: constraint (engines ek floor se neeche throttle nahi kar sakte) ek sphere ke bahar ka region define karta hai — ek non-convex set. Saath hi ka ke saath multiply hona dynamics ko nonlinear banata hai.
Step 1 — Change of Variables (nonlinearity khatam karo)
Acceleration equation ko se divide karo. Define karo:
Tab — nayi control mein linear hai.
Mass: — yeh bhi linear hai.
Thrust bounds, se divide karne par, ban jaate hain , aur hum slack introduce karte hain:
Step 2 — Lossless Convexification (genius move)
Bacha hua nonlinearity yeh hai: . Hum exponential ko ek second-order Taylor form mein linearize karte hain jo phir bhi convex hai:
jahan ek reference (no-thrust) trajectory par mass hai. Saare constraints ab convex hain (second-order cone / linear).
Step 3 — The Convex Program
Kaise solve karein: time ko nodes mein discretize karo → ek finite-dimensional SOCP → interior-point method se solve karo (ECOS, SDPT3). (flight time) par line search karo kyunki problem fixed ke liye convex hai; fuel-vs- curve unimodal hoti hai.

Worked Example A — Vertical 1-D landing (physics feel karo)
Lander at m, m/s, m/s² (Mars). Mass change ignore karo; m/s², m/s².
Q: Kya yeh ground se pehle ruk sakta hai? Available max deceleration m/s² (thrust upar, gravity neeche). 20 m/s se rukne ki distance: m m. ✔ Yeh step kyun? Hum "full thrust par shortest stopping distance" ko available altitude se compare karte hain — agar fit hota hai, toh fuel-optimal solution exist karta hai.
Fuel-optimal shape: minimum-fuel ⇒ mein bang-bang: coast (ya min-thrust) phir last moment par full-thrust brake. Kyun? Pehle burn karna propellant barbad karta hai kyunki gravity zyada der tak lad ti hai; optimizer burn delay karta hai — G-FOLD classic "suicide burn" reproduce karta hai.
Worked Example B — Glide-slope kyun matter karta hai
Target origin par; lander side se 30° above horizontal approach kar raha hai, lekin ek ridge 40° se neeche ke angles mein hai. set karo taaki .
m par lander 200 m horizontal radius ke andar hona chahiye. Yeh step kyun? Cone trajectory ko ek safe descent funnel ke upar rehne par majboor karta hai — ek convex constraint (cone convex hota hai), isliye yeh SOCP mein tractability ko bina koi nuksan pahunchaye seedha fit ho jaata hai.
Common Mistakes (Steel-man + Fix)
Flashcards
G-FOLD ka full form kya hai?
Powered descent ko non-convex kaun sa constraint banata hai?
Mass dynamics ko linearize karne ke liye kaun sa substitution use hota hai?
Acceleration control aur slack variables define karo.
"Lossless convexification" kya hai?
Relaxation lossless kyun hai?
Discretized G-FOLD kis class ka convex problem hai?
convex solve mein variable kyun nahi ho sakta?
Minimum-fuel landing ka objective kya hai?
Fuel-optimal thrust profile ki shape kaisi hoti hai?
Glide-slope constraint kya hai aur yeh convex kyun hai?
with kyun?
Recall Feynman: 12-saal ke bacche ko explain karo
Socho tum ek video-game rocket land kar rahe ho aur tumhe exact "X" par zero speed ke saath touch karna hai, jitna ho sake utne kam fuel mein. Engine super low idle nahi kar sakta — yeh ya toh off hai ya ek minimum push se upar. Yeh "ya toh off ya strong-ish" rule puzzle ko tricky bana deta hai, kai possible landings ke saath, aur computers confuse ho jaate hain. G-FOLD ek clever rewrite hai: actual push track karne ki jagah, hum push ÷ weight track karte hain, aur hum computer ko pretend karne dete hain ki push kuch bhi ho sakta hai ek chosen budget number tak. Kyunki hume budget chota rakhne par reward milta hai, computer naturally exactly utna hi push use karta hai jitna zaroorat hai — koi cheating nahi. Ab puzzle ka ek best answer hai, aur computer use itni tezi se dhundhta hai ki ek real rocket ko safely neeche steer kar sake.
Connections
- Pontryagin Minimum Principle — bang-bang aur lossless result prove karta hai.
- Convex Optimization aur Second-Order Cone Programming — solver machinery.
- Tsiolkovsky Rocket Equation — ka source.
- Interior-Point Methods (ECOS/SDPT3) — polynomial-time global solve.
- Apollo Lunar Descent Guidance — polynomial-thrust predecessor jise G-FOLD improve karta hai.
- Model Predictive Control — G-FOLD har cycle mein re-solve karna = landing ke liye MPC.
- SpaceX Falcon 9 Landing aur Mars EDL — real deployments.