A gyakorlati problémák esetén figyelembe kell venni mind a négy hiba típus lehetőségét.
Egy probléma megoldása kapcsán különböző hiba-elemzéseket szoktak végrehajtani.
Legyen $a_0$ – az adat pontos értéke, és $a$ – az $a_0$ közelítő értéke, akkor az $a - a_0$ lesz az adat közelítő értékének a hibája. A közelítő érték hiba-becslését (hibakorlátját) $\Delta a$-val jelöljük:
$$\boxed{|a-a_0|\leqslant \Delta_a.}\tag{1.1} \label{eq:1.1}$$
1.1. Példa.
Számítsuk ki egy téglalap területét:
$$a=5,\!43\text{ m},\quad b=3,\!82\text{ m}$$ $$\Delta_a= \Delta_b=0,\!01$$
$$S=ab = 20,\!7426\text{ m}^2$$
$$(a+0,\!01) (b+0,\!01) = 20,\!8352\text{ m}^2$$
$$(a-0,\!01) (b-0,\!01) = 20,\!6502\text{ m}^2$$
$$\Delta_S = 0,\!093\text{ m}^2$$
$$|S-S_0|\leqslant 0,\!0926$$
$$S\approx 20,\!74\text{ m}^2$$
Az $a_0$ adat az $a$ közelítő értékének a relatív hibája:
$$\delta_a=\displaystyle\frac{\Delta_a}{|a_0|}$$
Mivel általános esetben az $a_0$ értéke ismeretlen, a relatív hibát így fogjuk meghatározni:
$$\boxed{\delta_a=\displaystyle\frac{\Delta_a}{|a|} },\quad (a\neq 0).\tag{1.2}\label{eq:1.2}$$
A relatív hibát gyakran százalékban szokták megadni.
Visszatérve az előző példához, kiszámítjuk a relatív hibát:
$$S\approx 20,\!7426,\quad\Delta_S= 0,\!0926.$$
$$\delta_S\approx\displaystyle\frac{0,\!0926}{20,\!7426}\approx 0,\!045.$$
Egy adat relatív hibabecslése és a biztos számjegyeinek számának kapcsolata a következő (közelítőleg):
Ha $\delta=10 %$, akkor az adat egy biztos számjegyet tartalmaz,
ha $\delta=1%$, akkor az adat két biztos számjegyet tartalmaz,
ha $\delta=0,\!1 %$ akkor az adat három biztos számjegyet tartalmaz, ….
A matematikai táblázatokban a függvények értékei úgy vannak kerekítve, hogy a táblázat csak biztos számjegyeket tartalmazzon, és egy adat abszolút hibája nem haladja meg az utolsó megadott számjegy-egység értékének a felét.
Az összeg abszolút hibája
Az adatok pontos értékei legyenek $a_0$, $b_0$, az $a$ és a $b$ pedig, – az adatok közelítő értékei, és
$$|a-a_0|\leqslant\Delta_a\quad|b-b_0|\leqslant\Delta_b.$$
Akkor az $a+b$ összeg hiba-becslése:
$$\boxed{\Delta_{a+b} = \Delta_a + \Delta_b}.\tag{1.3}$$
A többi aritmetikai művelet esetén hasonló képleteket kaphatunk.
A kivonás $a-b$ abszolút hibája:
$$\boxed{\Delta_{a-b} = \Delta_a + \Delta_b}.\tag{1.4}$$
A szorzat $ab$ abszolút hibája:
$$\boxed{\Delta_{ab}\approx |a|\Delta_b + |b|\Delta_a}.\tag{1.5}$$
Az osztás $a/b$ abszolút hibája:
$$\boxed{\Delta_{a/b}\approx\displaystyle\frac{|a|\Delta_b + |b|\Delta_a}{|b^2|}}.\tag{1.6}$$
Ha a $b$ értéke közzel van a nullához, akkor az osztás abszolút hibája nagyon nagy lehet.
Több adat összeadása esetén
$$S=\displaystyle\sum_{k=1}^n a_k \tag{1.7}$$
az összeg hiba-becslése:
$$\Delta_S=\displaystyle\sum_{k=1}^n \Delta_k \tag{1.8}\label{eq:1.8}$$
Az $\eqref{eq:1.8}$ hibabecslés túlzott, mivel értéke sokkal nagyobb lehet a reális eltéréstől. Ha $n>10$, akkor célszerű alkalmazni a
statisztikai hiba-becslést (Csebotárjov-féle szabály):
$$\Delta_S=\sqrt{3n}\cdot\Delta_k,\tag{1.9}\label{eq:1.9}$$
amely sokkal pontosabb eredményt ad, mint az $\eqref{eq:1.8}$ képlet.
Az $\eqref{eq:1.9}$ képletben azt feltételezzük, hogy a hibák nagyságrendje körülbelül azonos. Ha az egyik adat abszolút hibája lényegesen nagyobb a többi abszolút hibánál,
$$\Delta_1\gg\Delta_k,\quad k>1, \tag{1.10}$$
akkor az összeg abszolút hibáját egyszerűbben lehet megállapítani:
$$\Delta_S\approx\Delta_1.\tag{1.11}$$
1.2. Példa.
érték | abszolút hiba |
---|---|
345,4 | 0,05 |
235,2 | 0,05 |
11,75 | 0,005 |
9,27 | 0,005 |
0,35 | 0,005 |
0,18 | 0,005 |
0,08 | 0,005 |
0,02 | 0,005 |
0,00 | 0,005 |
$$ S=602,\!25,\quad \Delta_S=0,\!05+0,\!05=0,\!1.$$
A $a+b$ összeg relatív hibája:
$$\boxed{\delta_{a+b}=\max\{\delta_a,\delta_b\} }.\tag{1.12}$$
Több adat esetén:
$$\Delta_S=\displaystyle\sum_{k=1}^n \Delta_k \tag{1.13}\label{eq:1.13}$$
$$\delta_S\leqslant\max_{k}\delta_k.\tag{1.14}$$
Kivonás $a-b$ relatív hibája:
$$\boxed{\delta_{a-b}=\displaystyle\frac{\Delta_a+\Delta_b}{|a-b|} },\quad a>0,b>0.\tag{1.15}$$
Megjegyzés. Ha az $a$ és $b$ számok értékei közel vannak egymáshoz, akkor a kivonás relatív hibája nagyon nagy lehet! Ezért, ha van lehetőség, a kivonás műveletet ki kell küszöbölni az algoritmusból (a kifejezések átalakításával)!
Szorzás $ab$ relatív hibája:
$$\boxed{\delta_{ab} = \delta_a + \delta_b}.\tag{1.16}$$
Osztás $a/b$ relatív hibája:
$$\boxed{\delta_{a/b} = \delta_a + \delta_b}.\tag{1.17}$$
Több adat esetén a szorzások és osztások
$$r=\displaystyle\frac{\displaystyle\prod_{k=1}^m a_k}{\displaystyle\prod_{j=1}^n b_j}\tag{1.18}$$
relatív hibája:
$$\delta_r=\displaystyle\sum_{k=1}^m \delta_{a_k}+\displaystyle\sum_{j=1}^n \delta_{b_j}.\tag{1.19}$$
Ha $n+m>10$, akkor lehet a statisztikai hibabecslést alkalmazni. Feltételezve, hogy a $\delta_a$, $\delta_b$ relatív hibák értékei azonos nagyságrendűek, akkor a következő hiba-becslést kapunk:
$$\delta_r\approx\sqrt{3(n+m)}\delta.\tag{1.20}$$
Ha az egyik szám relatív hibája lényegesen nagyobb a többi relatív hibánál:
$$\delta_{a_1}\gg\delta_{a_k},\quad \delta_{a_1}\gg\delta_{b_j},$$
akkor
$$\delta_r\approx\delta_{a_1}.\tag{1.21}$$
1.3. Példa.
Számítsuk ki az
$$r=\displaystyle\frac{3,\!2\cdot 356,\!7\cdot 0,\!0481}{7,\!1948\cdot 34,\!56}=0,\!221$$
értékét, ha az adott számok mindegyik számjegye biztos.
A legnagyobb relatív hiba
$$\delta_1=\frac{0,\!05}{3,\!2}=0,\!016$$
és
$$\delta_r = 1,\!6\%$$
$r$ abszolút hibája:
$$\Delta_r =r\cdot\delta_r =0,\!221\cdot 0,\!016=0,\!0036,$$
$$\Delta_r <0,\!005$$
és a kerekítés után $r=0,\!22$ értéket kapunk.
1.4. Példa
$$a=1,\!137,\quad b=1,\!073,$$
$$\Delta_a = \Delta_b = 0,\!011.$$
Akkor:
$$c=a-b =0,\!064,\quad\Delta_c = \Delta_a + \Delta_b = 0,\!022.$$
$$\delta_c=\frac{0,\!022}{0,\!064}\approx 0,\!35\, (35\%),$$
Ez az eredmény egy biztos számjegyet sem tartalmaz!
1.5. Példa
Számítsuk ki a
$$d=1-\cos 1^{\circ}\tag{1.22}\label{eq:1.22} $$
értékét!
Mivel
$$\cos 1^{\circ} =0,\!9998, \quad \Delta_{\cos} = 0,\!00005,$$
$$d=0,\!0002,\quad\Delta_d = 0,\!00005,$$
akkor
$$\delta_d=\displaystyle\frac{0,\!00005}{0,\!0002}=0,\!25.$$
A hiba-becslés $25\%$.
Ezt a $\delta_d$ hiba-becslést csökkenthetjük, ha átalakítjuk a $\eqref{eq:1.22}$ képletet. Mivel
$$1 - \cos 2x =2\sin^2x,$$
akkor:
$$d=1-\cos 1^{\circ}=2 \sin^2 0^{\circ}30^\prime =2g^2,\quad g=\sin 0^{\circ}30^\prime$$
és
$$g= 0,\!0087,\quad \Delta_g =0,\!00005,$$
$$d=2g^2=0,\!000151.$$
$$\delta_d=\displaystyle\frac{0,\!00005}{0,\!00087}=0,\!0058,\, (0,\!58\%)$$
$$\delta_d =2\delta_g =0,\!016$$
$$\Delta_d =d\cdot\delta_d=0,\!000151\cdot 0,\!0116 = 0,\!0000018.$$
Láthatjuk, hogy az átalakításokkal lényegesen csökkentettük az eredmény relatív hibáját.
1.6. Példa.
Számítsuk ki a kör területét, ha annak az átmérője $d=0,\!842\text{ m}$ és $\Delta_d=1\text{ mm}$.
$$S=3,\!1416/4\cdot 0,\!842 = 0,\!5568\text{ m}^2$$
$$\delta_{dd}=2,\quad\delta_d = 0,\!0024,\, (0,\!24\%),$$
$$\delta_S= \delta_{\pi/4} + \delta_{dd} = 0,\!0024,$$
$$\Delta_S =S,\quad\delta_S=0,\!0014,$$
$$S=0,\!557\text{ m}^2.$$
Legyen $y=f(x)$ kétszer differenciálható függvény. Akkor a másodrendű Taylor-felbontásból:
$$f(a_0)=f(a)+f´(a)(a_0-a)+f´´(ζ) (a_0-a)^2/2\tag{1.23}$$
$$a – \Delta_a < ζ < a + \Delta_a$$
és
$$|f(a_0)-f(a)|\leqslant|f^\prime(a)| \Delta_a +M/2 (\Delta_a)^2$$
ahol
$$M=\max|f´(ζ)|.$$
Ez alapján a függvényérték abszolút hiba-becslése:
$$\delta_{f(a)}=|f^{\prime}(a)|\,\Delta_a\tag{1.24}\label{eq:1.24}.$$
Megállapíthatjuk a függvényérték relatív hiba-becslését is:
$$\delta_{f(a)}=\frac{\Delta_{f(a)}}{|f(a)|}\approx\frac{|f^\prime(a)|\,\Delta_a}{|f(a)|}\cdot\frac{|a|}{|a|}=\frac{|f^\prime(a)|\,|a|}{|f(a)|}\cdot\frac{\Delta_a}{|a|}=\frac{|f^\prime(a)|\,|a|}{|f(a)|}\cdot\delta_a\tag{1.25}$$
$$\delta_{f(a)}\approx\frac{|f^\prime(a)|\,|a|}{|f(a)|}\cdot\delta_a\tag{1.26}\label{eq:1.26}$$
$$\frac{\delta_{f(a)}}{\delta_a}=\frac{|f^\prime(a)|}{|f(a)|}\,|a|\tag{1.27}\label{eq:1.27}$$
A $\eqref{eq:1.27}$ képlet alapján megállapíthatjuk, hogy a független változónak az eltérése milyen mértékben növeli a függvény értékének az eltérését. Ezt a mennyiséget a pontbeli kondíciószámának nevezzük:
$$\operatorname{cond}(f, x)=\frac{|f^\prime(x)|\,|x|}{|f(x)|}\tag{1.28}$$
Akkor a $\eqref{eq:1.26}$ alapján:
$$\delta_{f(a)}=\operatorname{cond}(f, a)\,\delta_a $$
Ha a $\operatorname{cond}(f, x)$ értéke nagy, akkor az lényegesen növeli a függvény relatív hibáját a független változó relatív hibájához képest. Megjegyezzük, hogy egy a függvény kondíciószáma $\operatorname{cond}(f, x)$ függ a $x$ változótól is, és általános esetben a függvényérték hibája változhat pontokként.
Azt mondjuk, hogy a függvény rosszul kondicionált, vagy numerikusan instabil, ha nagy annak nagy a kondíciószáma.
A lineáris algebra problémák elemzésének is fontos eleme a kondíciószám fogalma.
Ha $f(x)>0$, akkor:
$$\delta_{f(a)}=\frac{|f^\prime(a)|}{|f(a)|}\,\Delta_x=\left|\left[\ln f(x)\right]^\prime\right|\Delta_x\tag{1.29}\label{eq:1.29}$$
Konkrét függvények hibabecslései
Hatványozás.
$$y=x^a\tag{1.30}$$
$$\Delta_y=a x^{a-1}\Delta_x\tag{1.31}$$
$$\delta_y=|a|\,\delta_x\tag{1.32}$$
Exponenciális függvény.
$$y=a^x,\quad(a>0)\tag{1.33}$$
$$\Delta_y=a^x ·\ln a·\Delta_x\tag{1.34}$$
$$\delta_y= \Delta_x \ln a\tag{1.35}$$
Ha $y=e^x$, akkor
$$\delta_y= \Delta_x$$
Logaritmikus függvény.
$$y=\ln x\tag{1.37}$$
$$\Delta_y=\frac{\Delta_x}{x}= \delta_x\tag{1.38}$$
a $y=\lg x$ esetén:
$$\Delta_y=0,\!4343\, \delta_x\tag{1.39}$$
Trigonometrikus függvények.
$$y=\sin x,\quad \Delta_{\sin x}=|\cos x|\,\Delta_x\leqslant \Delta_x\tag{1.40}$$
$$y=\cos x,\quad \Delta_{\cos x}=|\sin x|\,\Delta_x\leqslant \Delta_x\tag{1.41} $$
$$y=\operatorname{tg}x,\quad \Delta_{\operatorname{tg}x}=(1+\operatorname{tg}^2x)\,\Delta_x \geqslant\Delta_x\tag{1.42}$$
$$y= \operatorname{ctg}x,\quad\Delta_{\operatorname{ctg}x}=(1+\operatorname{ctg}^2x)\,\Delta_x\geqslant\Delta_x\tag{1.43}$$
1.7. Példa
Számítsuk ki a $y=\sin x$ abszolút hibáját, ha $x=25^\circ 20^\prime$ és $\Delta_x =1^\prime$.
Mivel $1^\prime =0,\!000291$ radián, akkor
$$\Delta_{\sin x}=|\cos x|\Delta_x=\cos 25^\circ 20^\prime\cdot 0,\!000291=0,\!00026.$$
Inverz hibabecslés elemzése.
Adva van a $y=f(x)$ függvény maximális megengedett abszolút hibája $\Delta_y$. Meg kell állapítani, hogy milyen lehet a független változó $x$ abszolút hibája $\Delta_x$, hogy a függvény abszolút hibája ne haladja meg az adott $\Delta_y$ értéket.
Ha $f^\prime(x)\neq 0$, akkor a $\eqref{eq:1.24}$ alapján:
$$\Delta_x= \frac{\Delta_y}{|f^\prime(x)|}\tag{1.44}$$