Neeche wala figure poore page ka ek map hai, koi formula nahi. Har box exercise ladder ka ek level hai; colour batata hai kitna mushkil hai (chalk-blue = warm-up, pale-yellow = analysis, chalk-pink = mastery). Har box ke andar, italic line us level ka flavour of question hai. Arrows intended climb order dikhate hain. Upar ki single line moral hai: chahe aap kisi bhi box mein ho, actual computation hamesha wohi teen moves hai — O build karo, independent rows gino, n se compare karo.
Ise kaise padhein: bottom-left box se start karo (L1 Recognition — "O build karo, rank gino") aur arrows follow karo upar-right ki taraf L5 Mastery tak ("kya KF converge karega?"). Notice karo ki har box ka question wordier aur more physical hota jaata hai jaise aap climb karte ho, lekin neeche ka tool kabhi nahi badlta. Agar aap kabhi kisi exercise ke andar lost feel karo, is ladder pe apna box dhundho aur poochho: "main kis rung pe hun, aur kya mera current step waqai sirf rank test ka ek disguised roop hai?"
Goal: n read off karo, O mechanically build karo, rank gino.
Recall Solution 1.1
KYA karte hain: hum sirf C aur CA chahiye kyunki n=2 hai (hum CAn−1=CA1 tak stack karte hain).
KYUN: har extra row starting snapshot x(0) ke baare mein ek aur equation hai (woh state at time zero jo upar introduce ki gayi); Cayley–Hamilton (dekho Cayley–Hamilton Theorem) kehta hai An−1 pe rokne se kuch miss nahi hota.
KYUN sirf do rows:n=2, toh Cayley–Hamilton ke hisab se hum C aur CA stack karte hain aur ruk jaate hain — CA2 in ka ek combination hoga aur koi information add nahi karega.
C=[01], aur
CA=[01][3005]=[05].
O=[0015].
Row 2 bas 5× row 1 hai — koi nayi direction nahi. Pehla column sab zeros hai, toh rows ka koi combination kabhi bhi state 1 ko "reach" nahi kar sakta. rank(O)=1=2.
Answer: NOT observable. State x1 decoupled hai (A diagonal hai) aur unmeasured hai, toh yeh kabhi y mein leak nahi hota. ❌
Goal: real GNC dynamics plug in karo; rank ko physically interpret karo.
Recall Solution 2.1
KYUN sirf do rows:n=2, toh test ko exactly C aur CA chahiye (Cayley–Hamilton stack ko CAn−1 pe cap karta hai).
C=[01], CA=[01][0010]=[00].
O=[0010],rank=1=2.Answer: NOT observable.Interpretation: velocity kabhi position pe depend nahi karti (position dynamics mein wapas feed nahi hoti — A ka pehla column zero hai), toh velocity dekhne se aapko pata nahi chalta ki cart kahan hai. Parent note ke Example 1 se contrast karo, jahan aap position measure karte ho aur velocity A12=1 ke through leak hoti hai. Yahan information flow galat direction mein chal raha hai. Ek KF ki x1 pe variance kabhi shrink nahi hogi.
Recall Solution 2.2
KYUN sirf do rows: phir se n=2, toh hum C aur CA stack karte hain aur ruk jaate hain — Cayley–Hamilton ke hisab se higher powers redundant hain.
C=[10], CA=[10][00−1−0.1]=[0−1].
O=[100−1],rank=2=n.Answer: observable. ✅ Bias b ab bhi angle rate ko feed karta hai (A12=−1=0), toh iska footprint measured angle mein appear hota hai. Yahi mechanism Gyro bias estimation / star-tracker calibration ke peeche hai.
Goal: parameters, symbolic conditions, aur degenerate values handle karo.
Recall Solution 3.1
KYUN sirf do rows:n=2; C aur CA stack karo. Kyunki O tab square hai (2×2), hum full rank saste mein determinant se check kar sakte hain (nonzero determinant ⟺ full rank).
C=[1α], CA=[1α][0010]=[01].
O=[10α1],detO=(1)(1)−(α)(0)=1.
Determinant harα ke liye 1 hai, toh rank=2 hamesha hai.
Answer: saare real α ke liye observable. Sensor mein extra velocity term α kabhi position term se already mili information ko destroy nahi karta — doosri row CA independently velocity pin down kar leti hai.
Recall Solution 3.2
KYUN sirf do rows:n=2, toh hum C,CA stack karte hain aur detO full-rank test ke roop mein use karte hain.
C=[c1],
CA=[c1][2102]=[2c+12].
O=[c2c+112],detO=2c−(2c+1)=−1.
Determinant −1 hai, c se independent.
Answer: har c ke liye observable — yeh kabhi observability nahi khota. Yahan trap yeh hai (neeche dekho) ki assume karo ki ek free parameter ka koi na koi bura value zaroor hoga.
Recall Solution 3.3
KYUN yahan teen rows: ab n=3, toh Cayley–Hamilton hume CAn−1=CA2 pe rokta hai; hum C,CA,CA2 stack karte hain.
C=[010].
CA=[010]A=[0−21].
CA2=(CA)A=[0−21]A=[04−4].
O=0001−2401−4.Poora pehla column zero hai — koi row state x1 ko reach nahi karti. Toh rank(O)≤2<3.
Answer: NOT observable. State x1 (−1 mode) states 2 aur 3 se fully decoupled hai aur unmeasured hai; yeh invisible hai.
(Completeness ke liye: rows 2 aur 3 milke x2,x3 plane span karti hain, toh rank=2. Sirf isolated x1 mode lost hai.)
Goal: observability ko duality, Gramians, aur detectability ke saath combine karo.
Recall Solution 4.1
Set Aˉ=A⊤=[0100] aur B=C⊤=[10].
AˉB=[0100][10]=[01].
C=[BAˉB]=[1001],rank=2.
Full rank ⇒(A⊤,C⊤)controllable, (A,C) observable se match karta hai. Duality confirmed. Dekho Controllability — when we can steer the state aur Detectability & Stabilizability.
Recall Solution 4.2
A diagonal ke saath, eAt=[e−t00e−3t], aur C⊤C=[1111].
Integrand ki (i,j) entry hai (C⊤C)ije(λi+λj)t jisme λ1=−1,λ2=−3 hain. Kyunki system stable hai (λi<0), yeh exponentials decay karte hain, toh ∞ tak integral converge karta hai: ∫0∞e(λi+λj)tdt=λi+λj−1:
(Wo)11=−1−1−1=21,(Wo)22=−3−3−1=61.Interpretation:(Wo)22=61<(Wo)11=21. Faster-decaying mode (λ=−3) output ko influence karne mein kam time spend karta hai, toh woh less observable hai — KF use larger uncertainty ke saath recover karta hai. Yeh Riccati Equation & steady-state covariance se steady-state covariance se connect karta hai.
Goal: KF consequence, detectability, aur ek fix design karne ke baare mein reason karo.
Exercises se pehle, ek definition jo parent note ne rely ki thi lekin ab hum precisely define karenge, kyunki Level 5 isi par hinge karta hai.
Recall Solution 5.1
Setup — kyun update ek scalar tak collapse hota hai. Poori covariance time update P˙=AP+PA⊤+Q obey karti hai, jahan Q⪰0 process-noise injection hai. Ise single hidden axis v pe project karo (eigenvector jisme Av=λv): p=v⊤Pv likho us axis ke along variance ke liye aur q=v⊤Qv≥0 usme feed hone wale noise ke liye. Av=λv use karte hue (toh v⊤A=λv⊤ bhi), dono matrix terms mein se har ek λp contribute karta hai:
p˙=v⊤(AP+PA⊤+Q)v=λp+λp+q=2λp+q.
Crucially, measurement update yahan kuch nahi karta: mode unobservable hai, toh Kalman gain v ke along correct nahi kar sakta (Cv koi information carry nahi karta). Scalar p˙=2λp+qpoori kahani hai.
Case λ=−0.5 (stable mode). Tab p˙=−p+q. p˙=0 set karne pe steady value p∞=q milti hai, ek finite number; koi bhi starting p isme relax ho jaata hai. Bounded ✅. Agar hum yeh mode kabhi nahi dekhte, phir bhi yeh apne aap decay kar leta hai, toh injected noise pile up nahi ho sakta. System detectable hai: unobservable lekin stable.
Case λ=+0.5 (unstable mode). Tab p˙=+p+q. Homogeneous part e2(0.5)t=et ki tarah grow karta hai, toh p(t)→∞ — koi finite steady state exist nahi karta. Diverges ❌. Ek unobservable aur unstable mode fatal hai: filter exactly wahan blind hai jahan error explode ho rahi hai.
Woh property jo line draw karti hai: detectability. Ek Kalman Filter ka bounded steady-state covariance hoga iff har unobservable mode asymptotically stable hai (yaani λ<0). λ=−0.5 detectable hai (bounded); λ=+0.5 detectable nahi hai (diverges). Yeh Kalman Filter — prediction & update Riccati recursion ka covariance behaviour hai.
Recall Solution 5.2
KYUN hum purana kaam reuse kar sakte hain: original block {C,CA,CA2} already x2,x3 plane span karta tha (rank 2) lekin column 1 empty chhod diya tha. Nayi row directly x1 measure karti hai (g se scale hoke), jo exactly missing direction hai — toh hume sirf check karna hai ki yeh column 1 fill karta hai ya nahi.
Do independent purani rows ke upar fresh row stack karo; Onew ka relevant 3×3 block hai
g0001−2001.
Iska determinant compute karo (pehle column ke along expand karo, kyunki sirf top entry nonzero hai wahan):
det=g⋅det[1−201]=g⋅(1⋅1−0⋅(−2))=g⋅1=g.
Yeh determinant nonzero hai (aur isliye block, aur therefore Onew, full rank 3 hai) iff g=0.
Answer: har g=0 ke liye observable; g=0 pe ab bhi unobservable (zero-gain sensor kuch measure nahi karta, column 1 pehle jaisi empty rehti hai). Yeh design lesson hai: ek decoupled mode dekhne ke liye, aapko ek sensor add karna hoga jo use nonzero gain ke saath actually touch kare — aur hamesha confirm karo ki rank n tak bad gayi, parent note ki "more sensors tab tak help nahi karte jab tak woh rank add na karein" baat ko echo karte hue.
Recall Self-test checklist
Kya tum memory se kisi bhi n=2 system ke liye O build kar sakte ho? ::: Haan: C ko CA pe stack karo, 2×2 determinant check karo.
Woh ek number kaunsa hai jo square O ki observability decide karta hai? ::: Iska determinant — nonzero matlab full rank matlab observable.
Woh kaunsi property hai jo ek KF ko unseen mode tolerate karne deti hai? ::: Detectability — unseen mode asymptotically stable hai.
Ek decoupled invisible state ko rescue kaise karte hain? ::: Ek sensor add karo jo us state ko touch kare (us column mein nonzero gain) aur confirm karo ki rank n tak badh jaati hai.