Matrix is close to singular or badly scaled, system identification, control, least mean square method

2 views (last 30 days)
I am trying to estimate a system transfer function from the bode plot using least mean square method, and in my final stage of calculation,
I have
V0=89, V2=4.87*10^10, V4= 1.26*10^20
S0= -6.5*10^3, S2= -2.56*10^10, S4= 2.33*10^20, S6= 6.62*10^29, S8= 1.61*10^39, S10= 2.96*10^48,
T1= -3.38*10^6, T3=2.53*10^15, T5=-4.09*10^24, T7=-3.85*10^34, T9= -2.02*10^44, T11=9.51*10^53,
U2= 1.72*10^13, U4= 1.14*10^22, U6= 2.62*10^31, U8= 7.14*10^40.
Then a matrix M which is
M = [V0 0 -V2 T1 S2 -T3 -S4 T5 S6; 0 V2 0 -S2 T3 S4 -T5 -S6 T7; V2 0 -V4 T3 S4 -T5 -S6 T7 S8; T1 -S2 -T3 -S4 T5 S6 -T7 -S8 T9; S2 T3 -S4 T5 S6 -T7 -S8 T9 S10; T3 -S4 -T5 -S6 T7 S8 -T9 -S10 T11; S4 T5 -S6 U2 0 -U4 0 U6 0; T5 -S6 -T7 0 U4 0 -U6 0 U8; S6 T7 -S8 U4 0 -U6 0 U8 0]
and S= [S0; T1; S2; 0; U2; 0; U4; 0; U6]
My aim is to find G such that
M*G = S,
so I used the command G= M\S;
and I got a warning which says matrix is close to singular or badly scaled.
The G matrix I obtained is
G = [109.5618; 0.0004; 0.0000; -0.0115; 0.0000; -0.0000; 0.0000; -0.0000; 0.0000]
I am pretty sure the matrix that is close to singular is M. But, I really don't know how to overcome this warning/problem. When I read up online, most of the explanation were beyond my comprehension.
Can someone please help me with an easy-to-follow explanation since it is my final year project? and this is just the beginning :-(
Thanks a lot. I will appreciate any help.
  1 Comment
Ced
Ced on 23 Oct 2014
Not an expert in this field, but maybe this helps: The problem is most likely that your have a huge range of scales, i.e. from 1e3 to 1e53 or so. This is bound to give problems. What you could try is to work in dB to reduce that problem, i.e. apply the logarithm everywhere, perform least squares, transform back. Of course, your least-squares is then scaled as well, which may not be what you want, but it would be numerically much better.
Anyone feel free to object if this method makes no practical sense.

Sign in to comment.

Answers (0)

Categories

Find more on Dynamic System Models in Help Center and File Exchange

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!