Centre for Intelligent
Systems, https://cis.taltech.ee/
Department of Computer Systems, School of Information Technologies,
Tallinn University of Technology, Estonia
And briefly about background of CIS...
Hey Guillaume, quick question. Can the meaning of derivatives with integer orders $D^n / D x^n $ be generalized to those with non-integer orders?
Hey, interesting thought. What if $n = \frac{1}{2} $?
🤔 That would lead to a paradox! But one day useful consequences might be drawn from it.
Fractional calculus is a generalization of integration and differentiation to the non-integer order operator $_{a}\mathscr{D}{}_{t}^{\alpha}$, where $a$ and $t$ are the lower and upper bounds of the operation, $\alpha\in\mathbb{R}$ denotes the fractional order such that
If $\alpha$ is an integer number, the definition corresponds to a classical differentiation and integration operation.
A linear, fractional-order continuous-time dynamic system can be expressed by a fractional differential equation of the following form
where $a_{k},\,b_{k}\in\mathbb{R}$. The system is said to be of commensurate-order if in the above all the orders of derivation are integer multiples of a base order $\gamma$ such that $\alpha_{k},\,\beta_{k}=k\gamma,\,\gamma\in\mathbb{R}_{+}$. The system can then be expressed as
Applying the Laplace transform to the presented FODE with zero initial conditions the input-output representation of the fractional-order system can be obtained in the form of a transfer function:
In the case of a system with commensurate order $\gamma$ we have
The Oustaloup recursive filter gives a very good approximation of fractional operators in a specified frequency range and is widely used in applied fractional calculus. For a frequency range $(\omega_{b},\,\omega_{h})$ and of order $N$ the filter for an operator $s^{\gamma},\,0<\gamma<1$, is given by
The resulting integer-order model order is $2N+1$.
The fractional-order transfer function is
and approximation parameters $\omega=[10^{-4}; 10^4]$, $N=5$. This system is approximated using conventional and modified Oustaloup filter variants. Results are provided graphically below.
The control law of the PI$^{\lambda}$D$^{\mu}$ controller can be expressed as follows:
where $e(t)=y_{sp}(t)-y(t)$ is the error signal. After applying the Laplace transform to the above assuming zero initial conditions, the following equation is obtained:
Obviously, when taking $\lambda=\mu=1$ the result is the classical integer-order PID controller.
We suggest to review the following paper
Addition:
\[ [1, 2] + [3, 4] = [1 + 3, 2 + 4] = [4, 6]. \]Multiplication:
\[ [1, 2] \cdot [3, 4] = [\min(S), \max(S)] = [3, 8], \]where $S = \{ 1\cdot 3, 1\cdot 4, 2\cdot 3, 2\cdot 4 \} = \{3, 4, 6, 8\}$.
Using the idea of intervals, we can introduce the concept of interval uncertainties. We can use the interval uncertainty structure to define polynomials with uncertain coefficients falling into known intervals:
\[ p(x) = \ivlt{a_n}x^n + \ivlt{a_{n-1}}x^{n-1} + \dots + \ivlt{a_1}x + \ivlt{a_0}. \]where $\ivlt{a}$ denote intervals with a lower bound $\underline{a}$ and an upper bound $\overline{a}$.
Obviously, we can also introduce this concept to transfer functions, and further, to fractional-order transfer functions.
Thus, we can define a fractional-order transfer function with interval uncertaintites:
\[ G(s) = \frac{ \ivlt{b_m} s^{\beta_m} + \ivlt{b_{m-1}} s^{\beta_{m-1}} + \dots + \ivlt{b_1} s^{\beta_1} + \ivlt{b_0} s^{\beta_0} } { \ivlt{a_n} s^{\alpha_n} + \ivlt{a_{n-1}} s^{\alpha_{n-1}} + \dots + \ivlt{a_1} s^{\alpha_1} + \ivlt{a_0} s^{\alpha_0} }, \]where for process models it is usually assumed that $\beta_0 = \alpha_0 = 0$.
Just as with regular systems, we study the characteristic polynomial of the system or of the system composition with a controller. We say that the system is robustly stable, if we can prove that the corresponding system having interval uncertainties is stable.
ufpoly
— (fractional) polynomial with coefficients and/or exponents that can be represented with uncertainty using intervals.ufotf
— (fractional) transfer function having polynomials with uncertain coefficients/exponents represented by intervals, and possibly an uncertain delay term.Input the following fractional-order transfer function:
\[ \begin{equation} G_{1u} = \frac{s^{[0.1, 0.2]}+1}{[1, 2]s^{[1.5, 1.7]}+3s^{[0.5, 0.55]}-10}. \end{equation} \]In MATLAB, use the following code to get:
>> G1u = ufotf('s^[0.1,0.2] + 1', ...
'[1,2]s^[1.5,1.7] + 3s^[0.5,0.55] - 10')
s^{[0.1, 0.2]}+1
----------------------------------------
[1, 2]s^{[1.5, 1.7]}+3s^{[0.5, 0.55]}-10
Fractional-order transfer function with uncertainty intervals.
Consider the following interval plant
\[ \begin{aligned} &P(s)=\frac{[1, 2] s + [1, 2]}{s^2 + [1, 1.5] s + [0.5, 1.5]} \end{aligned} \]and a FOPID controller
\[ \begin{aligned} C(s) = 2 + \frac{1.8}{s} + 2.6 s^{0.1}. \end{aligned} \]Our objective is to determine whether the FOPID controller can robustly stabilize the negative unity feedback control system in the presence of interval uncertainties.
This is done in a conventional way, but using interval arithmetic. Finally, we arrive at the following expression:
\[ \begin{multline} \Delta(s) = s^3 + [2.6,5.2] s^{2.1} +[3, 5.5] s^2 \\ + [2.6,5.2] s^{1.1} + [4.3,9.1] s+[1.8,3.6]. \end{multline} \]We will now perform further steps on this representation using MATLAB code from the new feature set.
First, we create the ufpoly
object, then sample it, and obtain a Mikhailov plot:
>> F = ufpoly(['s^3 + [2.6, 5.2]s^2.1 + [3, 5.5]s^2 + [2.6, 5.2]s^1.1' ...
'+ [4.3, 9.1]s + [1.8, 3.6]'])
s^{3}+[2.6, 5.2]s^{2.1}+[3, 5.5]s^{2}+[2.6, 5.2]s^{1.1}+[4.3, 9.1]s+[1.8, 3.6]
Fractional polynomial with uncertainty intervals.
>> Fs = sample(F) % Result will be different every time
s^{3}+3.862s^{2.1}+5.0007s^{2}+2.9689s^{1.1}+6.3245s+3.4483
Fractional polynomial.
>> mikhailovfo(Fs)
The sampled member $F_s$ is stable, as the origin is not encircled. For that reason, we continue testing robust stability of the system with interval uncertainties.
We use the following commands in MATLAB (two different approaches are considered):
>> robstabfo1(F)
"robustly stable"
>> F1 = ufpoly('s^3+[2.6, 5.2]s^2.1+[3, 5.5]s^2');
>> F2 = ufpoly('[2.6, 5.2]s^1.1+[4.3, 9.1]s+[1.8, 3.6]');
>> robstabfo2(F1, F2)
"robustly stable"
According to the above, the system described previously is found to be robustly stable.
The technical details are presented in the mentioned paper. Please refer to it in case of interest.