2026/03/05
V primeru, da ne poznamo dinamike, potem bo najboljša dinamike kar
\[ \hat{x}(t) = z(t). \]
Z drugimi besedamo, meritve rabimo opravljati čim pogosteje in natančneje, stare pa zavreči.
Varianca je potem kar
\[ \hat{\sigma}_x ^2 (t) = R. \]
V primeru, če poznamo dinamiko med sistemi, potem rešujemo linearno diferencialno enačbo 1. reda
\[ \dot{x} (t) = A x + C(t). \]
V diskretnem prostoru, kjer vzorčimo s časom \( T \), bo zgornja diferencialna enačba postala diferenčna enačba
\[ \dot{x} = \frac{x_{n + 1} - x_n}{T}, \]
kjer sta \( x_{n + 1} = x((n + 1)T) \) in \( x_n = x(n T) \). Potem lahko izrazimo \( x_{n + 1} \)
\[ x_{n + 1} = x_n + \left[ A (nT) x_n + C(nT) \right] \cdot T = \left[ 1 + A(nT) \cdot T \right] x_n + C(nT). \]
Z uvedbo \( \Phi_n = [1 + A(nT) \cdot T] \) in \( c_n = C(n T) \cdot T \) dobimo zapis za dinamični zakon v diferenčni enačbi
\[ x_{n + 1} = \Phi_n x_n + c_n. \]
Porazdeljenost se ohranja tudi znotraj diferenčne enačbe, saj sta množenje in seštevanje linearni operaciji. Sedaj starih meritev ne smemo zanemariti kakor smo pri neznani dinamiki.
Isto dinamiko privzamemo tudi za oceno \( \hat{x} \) v merilnem sistemu \( M \).
Recimo, da smo opravili \( n \) vzorčenj. Z znano dinamiko v času \( t = n T \) in optimalno oceno \( \hat{x}_n \) in \( \hat{\sigma}_n ^2 \), lahko napovemo oceno v času \( t = (n + 1) T \)
\[ \bar{x}_{n + 1} = \Phi_n \hat{x}_n + c_n \quad \text{ in } \quad \bar{\sigma}_{n + 1} ^2 = \phi_{n ^2} \hat{\sigma}_n ^2. \]
Dokažimo, da ta napoved variance ocene drži.
Varianco ob času \( t = nT \) zapišemo po definiciji
\[ \hat{\sigma}_n ^2 = \left\langle \left( \hat{x}_n - x_n \right) ^2 \right\rangle. \]
Napoved variance pa je
\[ \bar{\sigma}_{n + 1} ^2 = \left\langle \left( \bar{x}_{n + 1} - x_{n + 1}\right) ^2 \right\rangle. \]
Upoštevamo napoved ocene in razpišemo
\[ \bar{\sigma}_{n + 1} ^2 = \left\langle \left[ \left( \Phi_n \hat{x}_n + c_n \right) ^2 - \left( \Phi_n x_n + c_n \right) ^2\right] \right\rangle = \left\langle \left[ \Phi_n \left( \hat{x}_n - x_n \right) \right] ^2 \right\rangle. \]
Zaključimo torej
\[ \bar{\sigma}_{n + 1} ^2 = \Phi_n ^2 \left\langle \left( \hat{x}_n - x_n \right) ^2 \right\rangle = \Phi_n ^2 \hat{\sigma}_n ^2. \]
Za meritev \( z_{n + 1} \) z varianco \( \sigma ^2 \) lahko izostrimo oceno v času \( t = (n + 1) T \) z enačbami
\[ \hat{x}_{n + 1} = \bar{x}_{n + 1} + \frac{\sigma_{n + 1} ^2}{\sigma ^2} \left( z_{n + 1} - \bar{x}_{n + 1} \right) \quad \text{ in } \quad \hat{\sigma}_{n + 1} ^{-2} = \bar{\sigma}_{n + 1}^{-2} + \sigma^{-2}. \]
Zgornjemu postopku pravimo ostrenje z meritvijo.
Uvedemo nove oznake: \( \hat{\sigma}_{n + 1} ^2 \) postane kovarianca izostrene ocene \( P_{n +1} \). \( \bar{\sigma}_{n + 1} ^2 \) postane kovarianca napovedi \( M_{n + 1} \), \( \frac{\hat{\sigma}_{n + 1} ^2}{\sigma ^2} \) postane ojačevalni faktor \( K_{n + 1} \) in \( \left( z_{n + 1} - \bar{x}_{n + 1} \right) \) je inovacija.
Z novimi oznakami imamo tako
\[ M_{n + 1} = \phi_n ^2 P_n \quad \text{ in } \quad P_{n + 1} = \frac{M_{n + 1} \sigma ^2}{M_{n + 1} + \sigma ^2}= M_{n + 1} - \frac{M_{n + 1} ^2}{M_{n + 1} + \sigma ^2} \]
Dinamiko spremenljivke \( x(t) \) v sistemu \( S \) ne poznamo eksaktno, torej imata \( \Phi_n \) in \( c_n \) svojo negotovost.
Spremenljivko spreminja nek neznan člen
\[ x_{n + 1} = \Phi_n x_n + c_n + \Gamma_n w(t), \]
za katerega ne vemo ali je pozitiven ali negativen. Posledično lahko zaključimo, da je njena pričakovana vrednost \( \left\langle w \right\rangle = 0 \). Neznanemu členu pravimo naključeno šum, \( \Gamma_n \) pa je multiplikativni faktor.
Primer takega šuma so trki med delci: okolica deluje na delec v pozitivni ali negativni smeri.
Za naključen šum velja
\[ \left\langle w_n, w_{n'} \right\rangle = \delta_{n, n'} Q, \]
kjer je \( Q \) velikost dinamičnega šuma, ki je nekorelirana (\( \delta \)).
Ponovna analogija s trki med delci: kam se delec odbije v naslednjem trenutku je neodvisno od trkov s prejšnjimi delci.
V diskretni obliki spremenljivko \( x \) zapišemo z dinamičnim šumom
\[ x_{n + 1} = \Phi_n x_n + c_n + \Gamma_n w_n. \]
V sistemu \( M \) pa bo odstopanje od spremenljivko v sistemu \( S \) ravno \( \Gamma_n w_n \), saj ne poznamo dinamike šuma. V sistemu \( M \) je ocena
\[ \bar{x}_{n + 1} = \Phi \hat{x}_n + c_n. \]
To odstopanje na ostrenje z meritvijo
\[ \hat{x}_{n + 1} = \bar{x} _{n + 1} + \frac{\hat{\sigma}_{n + 1} ^2}{\sigma ^2} \left( z_{n + 1} - \bar{x}_{n + 1} \right), \]
ne bo imelo vpliva.
Poglejmo si, kakšen vpliv pa bo imela na kovarianco napovedi
\[\begin{align*} M_{n + 1} &= \left\langle \left[ \left( \bar{x}_{n + 1} - x_{n + 1} \right) \right]^2 \right\rangle \\ &= \left\langle\left[ \left( \Phi_n \hat{x}_n + c_n \right) - \left( \Phi_n x_n + c_n + \Gamma_n w_n \right)\right] ^2 \right\rangle \\ &= \left\langle \left[ \Phi_n \left( \hat{x}_n - x_n \right) - \Gamma_n w_n \right] ^2 \right\rangle. \end{align*} \]Kvadriramo oklepaje in ni korelacije med \( \hat{x}_n, x_n \) in \( w_n \), nam ostane samo
\[\begin{align*} M_{n + 1} &= \left\langle \Phi_n ^2 \left( \hat{x}_n - x \right) ^2 + \left( \Gamma_n w_n \right) ^2 \right\rangle \\ &= \Phi_n ^2 P_n + \Gamma_n ^2 \left\langle w_n ^2 \right\rangle. \end{align*} \]Kovarianca napovedi ima torej v vsakem trenutku prišteto dodaten konstanten člen
\[ M_{n + 1} = \Phi_n ^2 P_n + Q_n. \]
Pri prehodu v zvezno sliko je ocena spremenljivke v sistemu \( M \)
\[ \hat{x}_{n + 1} = \bar{x}_{n + 1} + K_{n + 1} \left( z_{n + 1} - \bar{x}_{n + 1} \right). \]
Upoštevamo definicijo napovedi in
\[ \frac{\hat{x}_{n + 1} - x_n}{T} = \frac{\Phi_n \hat{x}_n + c_n - \hat{x}_n + K_{n + 1} (z_{n + 1} - \bar{x}_{n + 1})}{T}. \]
Dodatno lahko pretvorimo v
\[ \frac{\hat{x}_{n + 1} - \hat{x}_n}{T} = \frac{\left( \Phi_n - 1 \right)}{T} \hat{x}_n + \frac{c_n}{T} + \frac{P_{n + 1}}{\sigma ^2 T} \left( z _{n + 1} - \bar{x}_{n + 1} \right). \]
V limiti \( T \to 0 \) dobimo enačbo
\[ \dot{\hat{x}} = A(t) \hat{x}(t) + c(t) + \frac{P(t)}{R} \left( z(t) - \hat{x}(t) \right), \]
kjer je \( \frac{\Phi_n - 1}{T} = A(t) \) in \( \sigma ^2 T = R \). Upoštevali smo, da v limiti \( \hat{x}_n = \bar{x}_n = \hat{x}(t) \) in napoved kovariance \( M_{n + 1} \) je \( P(t) \) (prav tako je v limiti \( P_{n + 1} = P(t) \)).
Na podoben način želimo preiti v zvezno sliko tudi pri kovarianci izostrene ocene
\[ P_{n + 1} = M_{n + 1} - \frac{M_{n + 1} ^2}{M_{n + 1} + \sigma ^2} = \Phi_n ^2 P_n + \Gamma_n Q_n - \frac{\left( \Phi_n ^2 P_n + \Gamma_n ^2 Q_n \right) ^2}{M_{n + 1} + \sigma ^2}. \]
Za postopanje do odvoda zapišemo
\[ \frac{P_{n + 1} - P_n}{T}= \frac{\left( \Phi_n ^2 - 1 \right)P_n}{T} + \frac{\Gamma_n ^2 Q_n}{T} - \frac{\Phi_n ^2 P_n ^2 + 2 \Phi_n ^2 P_n \Gamma_n ^2 Q_n + \Gamma_n ^4 Q_n ^2}{TM_{n + 1} + \sigma ^2 T} . \]
V limiti \( T \to 0 \) gre \( \Phi_n \to 1 \), hkrati pa upoštevamo identiteto od prej in lahko prvi člen zapišemo
\[ \frac{\left( \Phi_n ^2 - 1 \right)P_n}{T} = \left( \Phi_n - 1 \right)\frac{\left( \Phi_n - 1 \right) }{T} P_n = 2 A P(t). \]
Povejmo še nekaj limit. Po definicije nekorelacije velja \( \left\langle w_k w_{k'} \right\rangle = \delta_{k k'} Q_n \), iz česar sledijo limite
\[\begin{align*} \lim_{T \to 0} \left( Q_n T \right) &= Q(t)\\ \lim_{T \to 0} \left( \sigma ^2 T \right) &= R(t) \\ \lim_{T \to 0} \left( \frac{\Gamma_n}{T} \right) &= T(t) \end{align*} \]Drugi člen moramo pomnožiti s \( \frac{T}{T} \), da lahko zapišemo limito
\[ \frac{\Gamma_n ^2 Q T}{T ^2} = \Gamma ^2 Q. \]
Pri zadnjem členu pa je v limiti
\[ \frac{\Phi_n ^2 P_n ^2 + 2 \Phi_n ^2 P_n \Gamma_n ^2 Q_n + \Gamma_n ^4 Q_n ^2}{TM_{n + 1} + \sigma ^2 T} = \frac{1}{T M(t) + R} \left[ P ^2(t) + \frac{2 P \Gamma Q T}{T} + \Gamma ^2 (t) Q(t) T ^2 \right]. \]
Zadnje dva člena smo razširili s \( T \) in v limiti sta potem ničelna. Končna enačba je torej
\[ \dot{P} = 2 A P(t) + \Gamma ^2 Q - \frac{P ^2}{R}. \]
Prvi člen nam pove dinamiko, drugi člen nam povečuje kovarianco zaradi dinamičnega šuma, tretji člen pa zmanjša kovarianco zaradi dotoka novih meritev.
V sistemu \( S \) popišemo več spremenljivk \( \mathbf{r} = [x,y]^T = [x, v]^T \).
Včasih nam dinamika narekuje, da bi morali opazovati spremenljivk višjega reda, je Newtonov zakon \( \sum_{}^{} F = m a = m \ddot{x} \). Pri njem imamo 2. red spremenljivke \( x(t) \). Namesto tega prevedemo opazovanje na več spremenljivk \( \dot{x} = v \) in \( \dot{v} = \sum\limits_{}^{} \frac{F}{m} \) nižjega reda.
Potem bo opazovani sistem
\[ \frac{\mathrm{d} }{\mathrm{d} t} \begin{bmatrix} x \\ v \end{bmatrix} = \begin{bmatrix} 0 & 1 \\ 0 & 0 \end{bmatrix} \begin{bmatrix} x \\ v \end{bmatrix} + \mathbf{c}. \]
Sedaj imamo sistem diferencialnih enačb.
Imamo torej spremenljivke
\[ \mathbf{x} = \begin{bmatrix} x_{1} \\ x_{2} \\ x_{3} \\ \vdots \\ x_{n} \end{bmatrix}. \]
Ocene v sistemu \( M \) s pripadajočimi disperzijami pa so
\[ \hat{\mathbf{x}} = \begin{bmatrix} \hat{x}_{1} \\ \hat{x}_{2} \\ \vdots \\ \hat{x}_{n} \end{bmatrix}. \]
Ker so disperzije lahko medseboj korelirane
\[ \left\langle \left( \hat{x}_i - x_i \right) ^2 \right\rangle = \hat{\sigma}_{x_i} ^2 \quad \text{ in } \quad \left\langle \left( \hat{x}_i - x_i \right) \left( \hat{x}_j - x_j \right) \right\rangle = \hat{\sigma}_{x_i, x_j}. \]
Zapišemo jih v kovariančno matriko \( P \) za \( \dot{\mathbf{x}} \)
\[ P = \begin{bmatrix} \hat{\sigma}_{1} ^2 & & & & & \\ & \hat{\sigma}_2 ^2 & & & & \\ & & \ddots & & & \\ & & \hat{\sigma}_{ij} & \hat{\sigma}_{ii} ^2 & & \\ & & & & \ddots & \\ & & & & & \hat{\sigma}_n ^2 \end{bmatrix}, \]
kjer so diagonalni komponenti variance, izvendiagonalne komponente pa korelacije.
Imejmo sistem \( S \) s spremenljivkama \( \mathbf{x} = [x, v]^T \). Zajemamo meritve oblike \( z = x + r \), kjer je \( \left\langle r ^2 \right\rangle = \sigma_r ^2\). Ocene v merilnem sistemu \( M \) so
\[ \hat{\mathbf{x}} = \begin{bmatrix} \hat{x} \\ \hat{v} \end{bmatrix} = \begin{bmatrix} x + p_{x} \\ v + p_{v} \end{bmatrix}. \]
Povprečje ocene je potem
\[ \bar{\mathbf{x}} = \begin{bmatrix} \bar{x} \\ \bar{p} \end{bmatrix} = \begin{bmatrix} x + m_{x} \\ v + m_{v} \end{bmatrix} \]
Veljajo nekorelacije
\[ \left\langle r m_x \right\rangle = \left\langle r p_x \right\rangle = \left\langle r m_v \right\rangle = 0. \]
Poskusimo izostriti z linearno superpozicijo
\[\begin{align*} \hat{x} &= x + p_x = a_{xx } \bar{x} + a_{xv} \bar{v} + b_x z \\ \hat{v} &= v + p_v = a_{vx } \bar{x} + a_{vv } \bar{v} + b_v z \end{align*} \]Zapišemo torej
\[ \hat{x} = a_{xx } (x + m_x) + a_{xv} (v + m_v) + b_x (x + r). \]
In ker je
\[ x + p_x = x (a _{xx } + b_x) + a_{xv} v + a_{xv} m_v + a_{xx } m_x + b_x r, \]
na levi strani nimamo nobenega člena z \( v \), zaključimo \( a_{xv} = 0 \). Hkrati pa dobimo tudi pogoj \( a_{xx } + b_x = 1 \). Potem je
\[ p_x = a_{xx } m_x + b_x r = a_{xx } m_x + (1 - a_{xx }) r. \]
Pričakovane vrednosti so ničelne, zato bomo gledali variance
\[\begin{align*} \left\langle p_x ^2 \right\rangle &= a_{xx } ^2 \left\langle m_x \right\rangle ^2 + (1 - a_{xx }) ^2 \left\langle r ^2 \right\rangle + a_{xx } (1 - a_{xx }) \left\langle w_x r \right\rangle \\ &= a_{xx } ^2 \sigma_x ^2 + (1 - a_{xx }) ^2 \sigma_r ^2. \end{align*} \]Upoštevali smo nekoreliranost. Optimalna ocena je potem pri
\[ \frac{\mathrm{d} }{\mathrm{d} a_{xx }} \left\langle p_x ^2 \right\rangle = 0, \]
kar je pri
\[ a_{xx } \frac{\sigma_r ^2}{\sigma_r ^2 + \sigma_x ^2}. \]
Na podoben način pridemo tudi pri \( \hat{v} \)
\[ v + p_v = (a_{vx} + b_v) x + a_{vx} m_x + a_{vv} v + a_{vv} m_v + b_v. \]
Zaključimo, da je \( a_{vv} = 1 \) ter \( a_{vx} + b_v = 0 \).
Torej
\[ p_v = a_{vx} m_x + m_r + b_v r = \left( a_{vx} (m_x - r) + m_r \right) ^2. \]
Izračunamo kvadrat in varianco
\[ \left\langle p_v ^2 \right\rangle = a_{vx} ^2 \left[ \left\langle m_x ^2 \right\rangle + \left\langle r ^2 \right\rangle \right] + \left\langle m_v ^2 \right\rangle + 2 a_{vx} \left\langle m_x m_v \right\rangle. \]
Po odvodu
\[ \frac{\mathrm{d} }{\mathrm{d} a_{vx}} \left\langle p_v ^2 \right\rangle = 0, \]
dobimo
\[ a_{vx} = -\frac{\left\langle m_x m_v \right\rangle}{\sigma_x ^2 + \sigma_r ^2}. \]
Ocena bo torej, ko nadomestimo vse izpeljane člene
\[ \hat{x} = \bar{x} + \frac{\sigma_x ^2}{\sigma_x ^2 + \sigma_r ^2} \left( z - \bar{x} \right) \]
in
\[ \hat{v} = \bar{v} + \frac{\left\langle m_x m_v \right\rangle}{\sigma_x ^2 + \sigma_r ^2} \left( z - \bar{x} \right). \]
Zaključimo, da z meritvijo lege in korelacije hkrati ostrimo tudi komponento hitrosti, čeprav je nismo direktno merili.
Kovariančna matrika je definirana kot
\[ M = \left\langle \left( \bar{\mathbf{x}} - \mathbf{x} \right) \left( \bar{\mathbf{x}} - \mathbf{x} \right)^T \right\rangle. \]
Kovariančna matrika izostrenih ocen pa je
\[ P = \left\langle \left( \hat{\mathbf{x}} - \mathbf{x} \right) \left( \hat{\mathbf{x}} - \mathbf{x} \right)^T \right\rangle . \]
Obe matriki sta pozitivno definitni in simetrični, kar pomeni, da velja
\[ P = P^T \quad \text{ in } \quad M = M^T. \]
Zanima nas verjetnostna gostota \( P(\bar{x}) \).
\[ P(\bar{x}) = \frac{1}{\sqrt{\left( 2 \pi \right) ^2} \det M} \exp \left[ - \frac{1}{2} \left( \bar{x} - x \right)^T M^{-1} \left( \bar{x} - x \right) \right]. \]
Za \( \mathbf{x} = [x, y] \) bo potem verjetnostna gostota
\[ P(\bar{x}, \bar{y}) = \frac{1}{2 \pi} \frac{1}{\sigma_x \sigma_y \sqrt{1 - \rho ^2}} \exp \left[ - \frac{1}{2 (1 - \rho ^2)} \left( \frac{(\bar{x} - x) ^2}{\sigma_x ^2} + \frac{(\bar{y} - y) ^2}{\sigma_y ^2} - \frac{2 \rho (\bar{x} - x) (\bar{y} -y)}{\sigma_x \sigma_y} \right) \right]. \]
Označimo korelacijo
\[ \left\langle (\bar{x} - x) (\bar{y} - y) \right\rangle = \rho \sigma_x \sigma_y \]
Imamo sistem \( S \) s spremenljivkami \( \mathbf{x} = [x_1, x_2, x_3, \ldots, x_n] \) in zajemamo podatke preko večih senzorjev z meritvami \( \mathbf{z} = [z_1, z_2, z_3, \ldots, z_s] \). Okno \( H \) je matrika \( s \times n \), ki preslika meritve v spremenljivke. Signali iz senzorjev so
\[ \mathbf{z} = H \mathbf{x} + \mathbf{r}. \]
Na vsako komponento deluje nek šum in imamo vektor merilnega šuma \( \mathbf{r} = [r_1, r_2, r_3, \ldots, r_s] \). Vsak šum ima pripadajoče odstopanje \( \sigma_i ^2, \ i = 1, 2, 3, \ldots, s \).
Pri kanalih, ki merijo, lahko pride do t.i. cross-talking. V mejah našega predmeta to pomeni, da pride do korelacije. Vse skupaj sestavljamo kovariančno matriko merilnega šuma
\[ R = \left\langle \mathbf{r} \mathbf{r}^T \right\rangle. \]
Na primeru si poglejmo okno \( H \). Imejmo spremenljivki \( \mathbf{x} = [\phi_1, \phi_2] \), kjer merimo kot.
Meritev prvega nihala je
\[ z = \alpha_1 + r_{\alpha}. \]
Vektorski sistem je potem
\[ \mathbf{z} = H \mathbf{x} + \mathbf{r}. \]
V tem primeru je okno \( H = [1, 0] \) in produkt
\[ H \mathbf{x} = [1, 0] \begin{bmatrix} \phi_{1} \\ \phi_{2} \end{bmatrix}. \]
Okno oblike
\[ H = \begin{bmatrix} 1 & 2 \\ 0 & 1 \end{bmatrix} \]
ni dobro, saj prvi senzor meša kota prvega in drugega nihala.
Imamo torej sistem \( S \) s spremenljivkami \( \mathbf{x}(t) \), meritvami \( \mathbf{z} = H \mathbf{x} + \mathbf{r} \) in ocenami \( \bar{\mathbf{x}} = \mathbf{x} + \mathbf{m} \). Prav tako imamo kovariančno matriko \( M = \left\langle \mathbf{m} \mathbf{m}^T \right\rangle \) in pripadajočo kovariančno matriko merilnega šuma \( R = \left\langle \mathbf{r} \mathbf{r}^T \right\rangle \).
Izostrena ocena je linearna kombinacija \( \hat{x} = x + p \) v matrični formi
\[ \hat{x} = A \bar{x} + B z, \]
kjer sta \( A \in \mathbb{R}^{n \times n} \) in \( B \in \mathbb{R}^{n \times s} \) matrični uteži. Želimo ju določiti.
\[ \mathbf{x} + \hat{\mathbf{p}} = A (\mathbf{x} + \mathbf{m}) + B(H\mathbf{x} + \mathbf{r}). \]
Razrešimo oklepaje in iz enakosti
\[ \mathbf{x} + \hat{\mathbf{p}} = \left( A + B H \right) \mathbf{x} + A \mathbf{m} + B \mathbf{r}, \]
dobimo enakosti
\[ A + B H = I \quad \text{ in } \quad A \mathbf{m} + B \mathbf{r} = \hat{p}, \]
kjer je \( I \) identiteta.
\[\begin{align*} \left\langle p p^T \right\rangle &= \left\langle \left( A \mathbf{m} + B \mathbf{r} \right) \left( A \mathbf{m} + B \mathbf{r} \right)^T \right\rangle \\ &= \left\langle \left( A \mathbf{m} + B \mathbf{r} \right) \left( \mathbf{m}^T A ^T + \mathbf{r}^T B^T\right) \right\rangle. \end{align*} \]Oklepaje zmnožimo med sabo in dobimo
\[ \left\langle p p^{T} \right\rangle = \left\langle A \mathbf{m} \mathbf{m}^T A^T + B \mathbf{r} \mathbf{r} B^T + A \mathbf{m} \mathbf{r}^T B^T + B \mathbf{r} \mathbf{m}^T A^T \right\rangle. \]
Ker med \( m \) in \( r \) ni korelacije, zaključimo
\[ \left\langle p p^T \right\rangle = P = A M A^T + B R B^T, \ A + B H = I \]
\( A + BH = I \) predstavlja vez.
Na naslednjem predavanju bomo to poskusili optimizirati.