DSPRelated.com
Forums

state-space representation

Started by fisico32 July 24, 2010
hello forum,

I know that a linear system can be represented in its state space
representation. I am actually more used to the convolution integral,
transfer function methods...

What is the advantage of describing the dynamics of a system in state space
representation? I know that control people used that a lot.
Does a state space description always involve a feedback?

What is exactly the state(s)? We have an input signal x(t), an output
signal y(t)....The state variable u(t) represents the current state of the
system....If a system has no memory (static system) it will simply mean
that the state is the same at the output y(t)....
Or is there always a difference between the output and state?

Among the possible physical quantities that belong to a system, do we
freely choose which ones will be the output and which the state variables?

thanks!
fisico32
On 07/24/2010 07:38 AM, fisico32 wrote:
> hello forum, > > I know that a linear system can be represented in its state space > representation. I am actually more used to the convolution integral, > transfer function methods... > > What is the advantage of describing the dynamics of a system in state space > representation?
First, when you're designing a control system you can preserve a lot of information about the structure of the system in the state-space form, which gets lost when everything is lumped into a transfer function. Second, if you're facing a nonlinear system, it is much easier to represent said nonlinear system in state space form -- there is no such thing as a 'nonlinear transfer function', but state-space is the generic form for a nonlinear dynamic system. Third, if you implement a system in state space on a processor, you can dodge numeric issues in ways that -- you can't with single transfer functions. The easiest to show in this group is the "cascade of 2nd-order biquads" structure that one traditionally needs in an IIR filter: x_n = A * x_{n-1} + B * u_n; [ A_1 C 0 ] A = [ 0 A_2 C ] [ 0 0 A_3 ] where A_k is a 2x2 matrix that makes a biquad, and C is either [ 0 0 ] [ 0 1 ] C = [ ] or C = [ ] [ 1 0 ] [ 0 0 ] depending on the choice of A_k.
> I know that control people used that a lot. > Does a state space description always involve a feedback?
No, it just gives a nice formal way to put feedback in.
> What is exactly the state(s)?
Subject to interpretation and traditional usage, if you dig deep enough. Basically, if you describe your system as an integral equation, the states are the things on the output side of the integral.
> We have an input signal x(t), an output > signal y(t)....The state variable u(t) represents the current state of the > system....If a system has no memory (static system) it will simply mean > that the state is the same at the output y(t)....
No, it means that there are no states at all, just some plain old (i.e. memoryless) function that connects input to output.
> Or is there always a difference between the output and state?
No, but it's not an "either/or" situation. In general the system output is a function of the states and (possibly) the input.
> Among the possible physical quantities that belong to a system, do we > freely choose which ones will be the output and which the state variables?
No, because you have to have enough states to fully express the system. If you've got a second order system and both states are "visible" then those states are also outputs -- but you can't arbitrarily choose to have just one state then. -- Tim Wescott Wescott Design Services http://www.wescottdesign.com Do you need to implement control loops in software? "Applied Control Theory for Embedded Systems" was written for you. See details at http://www.wescottdesign.com/actfes/actfes.html
On Jul 25, 2:38&#4294967295;am, "fisico32" <marcoscipioni1@n_o_s_p_a_m.gmail.com>
wrote:
> hello forum, > > I know that a linear system can be represented in its state space > representation. I am actually more used to the convolution integral, > transfer function methods... > > What is the advantage of describing the dynamics of a system in state space > representation? I know that control people used that a lot. > Does a state space description always involve a feedback? > > What is exactly the state(s)? We have an input signal x(t), an output > signal y(t)....The state variable u(t) represents the current state of the > system....If a system has no memory (static system) it will simply mean > that the state is the same at the output y(t).... > Or is there always a difference between the output and state? > > Among the possible physical quantities that belong to a system, do we > freely choose which ones will be the output and which the state variables? > > thanks! > fisico32
All this stuff originated during the US missile program and for general rocket research. States can have physical meaning, position,velocity acceleration etc and it is form of simplification, splitting an nth order ODE in n first order ODE's. Yes it does fit in nicely with Kalman filters, state feedback and the like. There was a movement away from that in the mid-late 70s in europe,going back to polynomial methods and solving Diophantine equations instead of Ricatti equations. The two methods are equivalent. It is also possible to get descriptions that are mid-way bewteen polynomial and state-space. State-space has a lot going for it in filter design too as the previous poster points out. Hardy
Tim wrote:
>On 07/24/2010 07:38 AM, fisico32 wrote: >> hello forum, >> >> I know that a linear system can be represented in its state space >> representation. I am actually more used to the convolution integral, >> transfer function methods... >> >> What is the advantage of describing the dynamics of a system in state
space
>> representation? > >First, when you're designing a control system you can preserve a lot of >information about the structure of the system in the state-space form, >which gets lost when everything is lumped into a transfer function.
To the OP: If you want to dig deeper into this area, I would suggest looking into the "Kalman decomposition", where you transform and partition the state space system into a canonical form so you can easily examine [un]controllable and [un]observable behaviors and states. Some information is lost in going to a transfer function. You might look at minimal realizations and pole/zero cancellation. All of this is covered in the overpriced but understandable book by Chi-Tsong Chen (0-19-511777-8) for both continuous and discrete-time cases. If the states represent physical variables that have limits (such as op-amp outputs, which can saturate at or near the rails), throwing away the states may prevent you from easily determining the situations where the physical variables leave the assumed-linear regime. Additionally, I don't commonly see MIMO systems described in transfer function form (though they certainly can be), partly because if it's all one intercoupled system, there's probably just a whole lot more to write down to describe the same thing. On the flip side, at least with *continuous* time, you might consider that arbitrary pure delays are more easily represented in a transfer function (but are not rational). You may still be able to use approximations (e.g., Pade) so that this is not a problem.
On 24 Jul, 16:38, "fisico32" <marcoscipioni1@n_o_s_p_a_m.gmail.com>
wrote:
> hello forum, > > I know that a linear system can be represented in its state space > representation. I am actually more used to the convolution integral, > transfer function methods... > > What is the advantage of describing the dynamics of a system in state space > representation?
The intro chapters in the book by Friedland contains a discussion about the pros and cons with state space representations: http://www.amazon.com/Control-System-Design-Introduction-State-Space/dp/0486442780/ref=sr_1_1?ie=UTF8&s=books&qid=1280143107&sr=8-1 It essentially says what others have already said; that the state space is a more general formulation that contains the usual transfer function formalism, but hat also can be extended in a number of directions with relative ease. Whatever 'relative' might mean... Rune
On Jul 24, 12:15&#4294967295;pm, Tim Wescott <t...@seemywebsite.com> wrote:

> > Second, if you're facing a nonlinear system, it is much easier to > represent said nonlinear system in state space form -- there is no such > thing as a 'nonlinear transfer function', but state-space is the generic > form for a nonlinear dynamic system. >
Tim, if the transfer function is the Laplace transform of the impulse response, and the impulse response of a nonlinear system exists, why is there no such thing as a 'nonlinear transfer function'? Maurice
On 07/26/2010 08:11 AM, maury wrote:
> On Jul 24, 12:15 pm, Tim Wescott<t...@seemywebsite.com> wrote: > >> >> Second, if you're facing a nonlinear system, it is much easier to >> represent said nonlinear system in state space form -- there is no such >> thing as a 'nonlinear transfer function', but state-space is the generic >> form for a nonlinear dynamic system. >> > > Tim, if the transfer function is the Laplace transform of the impulse > response, and the impulse response of a nonlinear system exists, why > is there no such thing as a 'nonlinear transfer function'?
In mathemagic land the general response of a nonlinear system to an impulse is almost always going to either be infinite*, or zero (consider a subsystem whose output is the input limited to some finite value -- what's the integral of a finite value for an infinitesimal amount of time?). For most intents and purposes it'll be useless. In the real world the response of a system to a true impulse will be a large explosion. For most intents and purposes this is also useless. The whole point of a transfer function as an operator is that it works when superposition works -- and the exclusive essence of the definition of a linear system is that it is a system where superposition works. A nonlinear system does not support superposition, so it does not support a transfer function. You can _approximate_ a nonlinear system as a linear system, and then find the transfer function of that _approximation_. When life is going your way that's often the best way to proceed. But it doesn't work when you _must_ treat the system as nonlinear. * Or more honestly mathematically undefined -- what, exactly, is impulse squared? -- Tim Wescott Wescott Design Services http://www.wescottdesign.com Do you need to implement control loops in software? "Applied Control Theory for Embedded Systems" was written for you. See details at http://www.wescottdesign.com/actfes/actfes.html
Tim Wescott <tim@seemywebsite.com> wrote:
> On 07/26/2010 08:11 AM, maury wrote:
(snip)
>> Tim, if the transfer function is the Laplace transform of the impulse >> response, and the impulse response of a nonlinear system exists, why >> is there no such thing as a 'nonlinear transfer function'?
> In mathemagic land the general response of a nonlinear system to an
I recently found that our library now has a DVD of a movie I remember from school so many years ago called "Donald in Mathemagic Land." Narated by Donald Duck, it shows some of the applications of mathematics that third or fourth graders (about when I remember it from) may not yet see. Anyway... (snip)
> In the real world the response of a system to a true impulse will be a > large explosion. For most intents and purposes this is also useless.
Well, first, most analog systems are only linear in the small signal approximation (*). Also, since we can't really make a true impulse, a sufficiently narrow pulse with appropriate amplitude is usually used instead.
> The whole point of a transfer function as an operator is that it works > when superposition works -- and the exclusive essence of the definition > of a linear system is that it is a system where superposition works. A > nonlinear system does not support superposition, so it does not support > a transfer function.
And again, most real systems only support superposition as an approximation. Fortunately good enough most of the time. There is the whole field of non-linear optics, though even in that case it isn't completely non-linear. (**)
> You can _approximate_ a nonlinear system as a linear system, and then > find the transfer function of that _approximation_. When life is going > your way that's often the best way to proceed. But it doesn't work when > you _must_ treat the system as nonlinear.
But also note that the usual digital system is non-linear when the signal gets larger then the number of bits supplied. And usually non-linear in ways worse than in the analog world.
> * Or more honestly mathematically undefined -- what, exactly, > is impulse squared?
About as useful as RMS power, but don't tell the FTC that. (**) There is in non-linear optics something called a phase conjugate mirror. You put an optical signal, usually of a short duration, into one and get out the time reversed form of the signal. It seems that time reversal is a non-linear operation even if superposition does apply (for sufficiently small input signals). (*) Reminds me of a discussion in this group some time ago about global warming and the possibility of it being natural or manmade. It seems to me that we are now way beyond the small signal approximation in our changes to the environment. It is easy to consider our own CO2 emissions as small, but forget to multply by the billions of others on earth, and growing exponentially. Another important case of non-linearity. -- glen
On 07/26/2010 09:45 AM, glen herrmannsfeldt wrote:
> Tim Wescott<tim@seemywebsite.com> wrote: >> On 07/26/2010 08:11 AM, maury wrote: > (snip) >>> Tim, if the transfer function is the Laplace transform of the impulse >>> response, and the impulse response of a nonlinear system exists, why >>> is there no such thing as a 'nonlinear transfer function'? > >> In mathemagic land the general response of a nonlinear system to an > > I recently found that our library now has a DVD of a movie I > remember from school so many years ago called "Donald in Mathemagic > Land." Narated by Donald Duck, it shows some of the applications > of mathematics that third or fourth graders (about when I remember > it from) may not yet see. Anyway...
Where do you think I got the name? That's one of my favorite cartoons, even if I didn't remember just how much it dwells on the mysticism of the golden mean and how little on other stuff that may be of more import.
>> In the real world the response of a system to a true impulse will be a >> large explosion. For most intents and purposes this is also useless. > > Well, first, most analog systems are only linear in the small > signal approximation (*). Also, since we can't really make a true > impulse, a sufficiently narrow pulse with appropriate amplitude > is usually used instead. > >> The whole point of a transfer function as an operator is that it works >> when superposition works -- and the exclusive essence of the definition >> of a linear system is that it is a system where superposition works. A >> nonlinear system does not support superposition, so it does not support >> a transfer function. > > And again, most real systems only support superposition as an > approximation. Fortunately good enough most of the time. > There is the whole field of non-linear optics, though even in > that case it isn't completely non-linear. (**) > >> You can _approximate_ a nonlinear system as a linear system, and then >> find the transfer function of that _approximation_. When life is going >> your way that's often the best way to proceed. But it doesn't work when >> you _must_ treat the system as nonlinear. > > But also note that the usual digital system is non-linear when > the signal gets larger then the number of bits supplied. And usually > non-linear in ways worse than in the analog world.
Well, true -- but my main point is that asking for the transfer function of a nonlinear system isn't going to bring you joy. -- Tim Wescott Wescott Design Services http://www.wescottdesign.com Do you need to implement control loops in software? "Applied Control Theory for Embedded Systems" was written for you. See details at http://www.wescottdesign.com/actfes/actfes.html
On Jul 26, 12:46&#4294967295;pm, Tim Wescott <t...@seemywebsite.com> wrote:
> On 07/26/2010 09:45 AM, glen herrmannsfeldt wrote: > > > Tim Wescott<t...@seemywebsite.com> &#4294967295;wrote: > >> On 07/26/2010 08:11 AM, maury wrote: > > (snip) > >>> Tim, if the transfer function is the Laplace transform of the impulse > >>> response, and the impulse response of a nonlinear system exists, why > >>> is there no such thing as a 'nonlinear transfer function'? > > >> In mathemagic land the general response of a nonlinear system to an > > > I recently found that our library now has a DVD of a movie I > > remember from school so many years ago called "Donald in Mathemagic > > Land." &#4294967295; Narated by Donald Duck, it shows some of the applications > > of mathematics that third or fourth graders (about when I remember > > it from) may not yet see. &#4294967295; Anyway... > > Where do you think I got the name? &#4294967295;That's one of my favorite cartoons, > even if I didn't remember just how much it dwells on the mysticism of > the golden mean and how little on other stuff that may be of more import. > > > > > > >> In the real world the response of a system to a true impulse will be a > >> large explosion. &#4294967295;For most intents and purposes this is also useless. > > > Well, first, most analog systems are only linear in the small > > signal approximation (*). &#4294967295;Also, since we can't really make a true > > impulse, a sufficiently narrow pulse with appropriate amplitude > > is usually used instead. > > >> The whole point of a transfer function as an operator is that it works > >> when superposition works -- and the exclusive essence of the definition > >> of a linear system is that it is a system where superposition works. &#4294967295;A > >> nonlinear system does not support superposition, so it does not support > >> a transfer function. > > > And again, most real systems only support superposition as an > > approximation. &#4294967295;Fortunately good enough most of the time. > > There is the whole field of non-linear optics, though even in > > that case it isn't completely non-linear. (**) > > >> You can _approximate_ a nonlinear system as a linear system, and then > >> find the transfer function of that _approximation_. &#4294967295;When life is going > >> your way that's often the best way to proceed. &#4294967295;But it doesn't work when > >> you _must_ treat the system as nonlinear. > > > But also note that the usual digital system is non-linear when > > the signal gets larger then the number of bits supplied. &#4294967295;And usually > > non-linear in ways worse than in the analog world. > > Well, true -- but my main point is that asking for the transfer function > of a nonlinear system isn't going to bring you joy. > > -- > > Tim Wescott > Wescott Design Serviceshttp://www.wescottdesign.com > > Do you need to implement control loops in software? > "Applied Control Theory for Embedded Systems" was written for you. > See details athttp://www.wescottdesign.com/actfes/actfes.html- Hide quoted text - > > - Show quoted text -
I don't agree with that. There are many systems in nature that are nonlinear and the transfer function exists. The Volterra kernel, for example, makes a nonlinear impulse response of nth order, and systyem identification algorithms exist to measure these kernels. And these kernels support superposition. Just because a system output is unstable, doesn't mean it doesn't have a transfer function. Obtaining the transfer function for a nonlinear system not only brings joy, but in many instances, is necessary. The Volterra is considered the general impulse response for nonllinear systems, and the transfer function does exist using these kernels. Take a look at the work of Stephen Boyd (Stanford). He wrote quite a bit on the Volterra series and Volterra kernels in the 1980s. Also, Stenger's work at the Univ. of Erlangen-Nurnberg, "Adaptive Volterra Filters for Nonlinear Acoustic Echo Cancellation" Peddanarappagari (Univ. of Kansas), et al, "Volterra Series Transfer Function of Single-Mode Fibers" Reed (Univ. of Essex), et al, "Identification of Discrete Volterra Series Using Maximum Length Sequences" Pitas and Venetsanopoulos wrote of Volterra filters and the Volterra series in their chapter on polynomial filters in their book "Nonlineal Digital Filters" Maurice