Quantized state systems method: Difference between revisions

Content deleted Content added
OAbot (talk | contribs)
m Open access bot: url-access updated in citation with #oabot.
 
(41 intermediate revisions by 20 users not shown)
Line 1:
The '''quantized state systems''' ('''QSS''') '''methods''' [[PowerDEVS#References|[CK06]]] are a family of numerical integration solvers based on the idea of state quantization, [[dual (mathematics)|dual]] to the traditional idea of time discretization.
Unlike traditional [[numerical methods for ordinary differential equations|numerical solution methods]], which approach the problem by [[Discretization|discretizing]] time and solving for the next (real-valued) state at each successive time step, QSS methods keep time as a continuous entity and instead [[Quantization (signal processing)|quantize]] the system's state, instead solving for the ''time'' at which the state deviates from its quantized value by a ''quantum''.
 
They can also have many advantages compared to classical algorithms.<ref>{{cite journal |author1=Migoni, Gustavo |author2=Ernesto Kofman |author3=François Cellier |title=Quantization-based new integration methods for stiff ordinary differential equations|year=2011 |journal = Simulation |volume=88 |issue=4 |pages=387&ndash;407 |doi=10.1177/0037549711403645 |url=http://sim.sagepub.com/content/88/4/387 |url-access=subscription }}</ref>
They inherently allow for modeling discontinuities in the system due to their discrete-event nature and asynchronous nature. They also allow for explicit root-finding and detection of zero-crossing using ''explicit'' algorithms, avoiding the need for iteration---a fact which is especially important in the case of stiff systems, where traditional time-stepping methods require a heavy computational penalty due to the requirement to implicitly solve for the next system state. Finally, QSS methods satisfy remarkable global stability and error bounds, described below, which are not satisfied by classical solution techniques.
 
By their nature, QSS methods are therefore neatly modeled by the [[DEVS]] formalism, a [[discrete event simulation|discrete-event]] [[model of computation]], in contrast with traditional methods, which form [[Discrete time and continuous time#Discrete time|discrete-time]] models of the [[Discrete time and continuous time#Continuous time|continuous-time]] system. They have therefore been implemented in [[PowerDEVS#References|[PowerDEVS]]], a simulation engine for such discrete-event systems.
 
==Theoretical properties==
 
In 2001, Ernesto Kofman proved<ref>{{cite journal | last=Kofman | first=Ernesto |title=A second-order approximation for DEVS simulation of continuous systems|year=2002 |journal = Simulation |volume=78 | issue=2 |pages=76&ndash;89 | doi=10.1177/0037549702078002206 | citeseerx=10.1.1.640.1903 | s2cid=20959777 }}</ref> a remarkable property of the quantized-state system simulation method: namely, that when the technique is used to solve a [[Exponential stability|stable]] [[LTI system theory|linear time-invariant (LTI) system]], the global error is bounded by a constant that is proportional to the quantum, but (crucially) independent of the duration of the simulation. More specifically, for a stable multidimensional LTI system with the [[state-transition matrix]] <math>A</math> and [[State-space representation#Linear systems|input matrix]] <math>B</math>, it was shown in [CK06] that the absolute error vector <math>\vec{e}(t)</math> is bounded above by
 
:<math>
\left| \vec{e}(t) \right| \leq
\left| V \right|\ \left| \Re\left(\Lambda\right)^{-1} \Lambda \right|\ \left| V^{-1} \right|\ \Delta\vec{Q} +
\left| V \right|\ \left| \Re\left(\Lambda\right)^{-1} V^{-1} B \right|\ \Delta\vec{u}</math>
 
where <math>\Delta\vec{Q}</math> is the vector of state quanta, <math>\Delta\vec{u}</math> is the vector with quanta adopted in the input signals, <math>V \Lambda V^{-1} = A</math> is the [[Eigendecomposition#Eigendecomposition of a matrix|eigendecomposition]] or [[Jordan canonical form]] of <math>A</math>, and <math>\left|\,\cdot\,\right|</math> denotes the element-wise [[absolute value]] operator (not to be confused with the [[determinant]] or [[Norm (mathematics)|norm]]).
 
It is worth noticing that this remarkable error bound comes at a price: the global error for a stable LTI system is also, in a sense, bounded ''below'' by the quantum itself, at least for the first-order QSS1 method. This is because, unless the approximation happens to coincide ''exactly'' with the correct value (an event which will [[almost surely]] not happen), it will simply continue oscillating around the equilibrium, as the state is always (by definition) guaranteed to change by exactly one quantum outside of the equilibrium. Avoiding this condition would require finding a reliable technique for dynamically lowering the quantum in a manner analogous to [[adaptive stepsize]] methods in traditional discrete time simulation algorithms.
 
==First-order QSS method – QSS1==
Let an [[initial value problem]] be specified as follows.
 
:<math> \dot{x}(t) = f(x(t), xt), \quad x(t_0) = x_0. </math>
 
The first-order QSS method, known as QSS1, approximates the above system by
 
:<math> \dot{x}(t) = f(q(t), t), \quad q(t_0) = x_0. </math>
 
where <math>x</math> and <math>q</math> are related by histeretica ''[[Hysteresis|hysteretic]] quantization functions.function''
 
:<math>q(t) = \begin{cases}x(t) & \text{if } \left|x(t) - q(t^{-})\right| \geq \Delta Q \\ q(t^{-}) & \text{otherwise}\end{cases}</math>
==High-order QSS method – QSS2 and QSS3==
 
==Backward QSS method – BQSS==
where <math>\Delta Q</math> is called a ''quantum''. Notice that this quantization function is '''hysteretic''' because it has ''memory'': not only is its output a function of the current state <math>x(t)</math>, but it also depends on its old value, <math>q(t^{-})</math>.
==Linearly implicit QSS method – LIQSS==
 
==Theoretical properties==
This formulation therefore approximates the state by a piecewise constant function, <math>q(t)</math>, that updates its value as soon as the state deviates from this approximation by one quantum.
==Software implementation==
 
The [[Multidimensional system|multidimensional]] formulation of this system is almost the same as the single-dimensional formulation above: the <math>k^\text{th}</math> quantized state <math>q_k(t)</math> is a function of its corresponding state, <math>x_k(t)</math>, and the state vector <math>\vec{x}(t)</math> is a function of the entire quantized state vector, <math>\vec{q}(t)</math>:
 
:<math>\vec{x}(t) = f(\vec{q}(t), t)</math>
 
==High-order QSS methodmethods – QSS2 and QSS3==
 
The second-order QSS method, QSS2, follows the same principle as QSS1, except that it defines <math>q(t)</math> as a [[piecewise linear function|piecewise linear]] approximation of the trajectory <math>x(t)</math> that updates its trajectory as soon as the two differ from each other by one quantum.
The pattern continues for higher-order approximations, which define the quantized state <math>q(t)</math> as successively higher-order polynomial approximations of the system's state.
 
It is important to note that, while in principle a QSS method of arbitrary order can be used to model a continuous-time system, it is seldom desirable to use methods of order higher than four, as the [[Abel–Ruffini theorem]] implies that the time of the next quantization, <math>t</math>, cannot (in general) be [[Explicit and implicit methods|explicitly solved]] for [[algebraic solution|algebraically]] when the polynomial approximation is of degree greater than four, and hence must be approximated iteratively using a [[root-finding algorithm]]. In practice, QSS2 or QSS3 proves sufficient for many problems and the use of higher-order methods results in little, if any, additional benefit.
 
==Software implementation==
The QSS Methods can be implemented as a discrete event system and simulated in any [[DEVS]] simulator.
 
QSS methods constitute the main numerical solver for [[PowerDEVS]][[PowerDEVS#References|[BK011]]] software.
They have also been implemented in as a stand -alone version .
 
== References ==
{{Reflist}}
* [CK06] {{cite book|author author1= Francois E. Cellier and |author2=Ernesto Kofman |name-list-style=amp | year = 2006| title = Continuous System Simulation| publisher = Springer| isbn = 978-0-387-26102-7 |edition=first}}
 
* [BK11] {{cite articlenews|author author1= Bergero, Federico and |author2=Kofman, Ernesto |name-list-style=amp | year = 2011| title = PowerDEVS: a tool for hybrid system modeling and real-time simulation| publisher = Society for Computer Simulation International, San Diego | id = |edition=first}}
 
{{DEFAULTSORT:Quantized State System Methods}}
 
==External links==