%        File: crvi.tex
%     Created: pon maj 24 01:00  2004 C
% Last Change: pon maj 24 01:00  2004 C
%
\documentclass[a4paper]{article}
\usepackage[latin2]{inputenc}
\usepackage{amsmath,amsfonts}
\usepackage{graphicx}
\usepackage[slovene]{babel}
\begin{document}
Velikokrat re"sujemo za"cetni problem za sistem navadnih diferencialnih ena"cb
prvega reda:
\begin{eqnarray*}
y_1'(t)&=&f_1(t,y_1,\ldots, y_n)\\
y_2'(t)&=&f_2(t,y_1,\ldots, y_n)\\
&&\cdots\\
y_n'(t)&=&f_n(t,y_1,\ldots, y_n)
\end{eqnarray*}
z za"cetnim pogojem
\begin{eqnarray*}
y_1(t_0)&=&y_1\\
y_2(t_0)&=&y_2\\
\cdots\\
y_n(t_0)&=&y_n
\end{eqnarray*}

Numeri"cne metode, ki jih uporabimo za re"sevanje sistemov, so prakti"cno enake
kot za eno samo ena"cbo. Paziti moramo le, da namesto skalarjev 
uporabljamo vektorske koli"cine. Poglejmo si, kako metodo Runge-Kutta reda 2 
priredimo za sisteme ena"cb. 
Na intervalu, na katerem "zelimo poiskati re"sitev, izberemo delilne to"cke 
$$t_0,t_1=t_0+h,t_2=t_1+h,\ldots,t_n=t_{n-1}+h,\quad h=\frac{t_0-t_n}{n}$$
ki so razporejene enakomerno. Pribli"zke za vrednosti re"sitve $\mathbf{y}_k=\mathbf{y}(t_k)$  v delilnih to"ckah izra"cunamo z zaporedjem
\begin{eqnarray*}
\mathbf{k_1}&=& h\mathbf{f}(t_k,\mathbf{y}_k)\cr
\mathbf{k_2}&=& h\mathbf{f}(t_k+h,\mathbf{y}_k+\mathbf{k_1})\cr
\mathbf{y}_{k+1}&=&\mathbf{y}_k+(\mathbf{k_1}+\mathbf{k_2})/2
\end{eqnarray*}
kjer so $\mathbf{y}_k, \mathbf{k_1}$ in $\mathbf{k_2}$ vektorji v
$\mathbb{R}^n$ s komponentami $(y_1(t_k),y_2(t_k),\ldots,y_n(t_k))$, 
funkcija $\mathbf{f}:\mathbb{R}\times\mathbb{R}^n\to\mathbb{R}^n$ pa vektorska funkcija 
sestavljena iz desnih strani ena"cb 
$$\textbf{f}(t,\textbf{y})=(f_1(t,y_1,\ldots,y_n),\ldots,f_n(t,y_1,\ldots,y_n)).$$

\textbf{Primer:}
Internet zadnja leta  pestijo različne oblike zlonamerne kode. Poleg 
spama in poštnih virusov, so bili zadnja leta najbolj uspešni črvi, ki 
izkoriščajo varnostne luknje v slabo napisanih strežniških programih.  
Največ jih je izkoriščalo dobro znane luknje v 
M\$ IIS(Internet Information Server). Med njimi je bil tudi  
\textbf{Code Red}, ki je prvič pokazal zobe Julija 2001. 
Več o tem si lahko ogledate na \texttt{http://www.caida.org}. V današnji vaji 
bomo poskušali modelirati širjenje črva. Uporabili bomo epidemološki model, ki ga uporabiljajo 
predvsem za preučevanje širjenja nalezljivih bolezni pri človeku in živalih.

V vsakem trenutku $t$ naj bo

\begin{tabular}[h]{ll}
    $D(t)$ & število dojemljivih računalnikov\cr
    $I(t)$ & število inficiranih računalnikov\cr
    $Z(t)$ & število ``ozdravljenih'' računalnikov\cr
    $C(t)$ & število ``cepljenih'' računalnikov (z  
    varnostnimi popravki)\cr
\end{tabular}

C. C. Zou in sodelavci so predlagali naslednji model za opis dinamike okužbe.
\begin{equation}
    \label{eq:ODE}
    \begin{array}{ll}
	I'(t)&=\beta(t)D(t)I(t)-\gamma I(t)\cr
	J'(t)&=\beta S(t)I(t)\cr
	C'(t)&=\mu S(t)J(t),
    \end{array}
\end{equation}
kjer je 
\begin{eqnarray*}
    \beta(t)&=\beta_0(1-I(t)/N)^{\eta}\cr
\end{eqnarray*}
hitrost okužbe. Za lažje računanje smo vpeljali novo 
spremenljivko $J(t)=I(t)+Z(t)$, ki predstavlja število vseh računalnikov, 
ki so bili okuženi(vključno z ozdravljenimi) do trenutka $t$. 
Če predpostavimo, da se število vseh računalnikov ne spreminja, 
dobimo še enačbo $N=D(t)+I(t)+Z(t)+C(t)$, kjer je $N$ število vseh 
računalnikov, ki nastopajo v modelu. Tako lahko iz enačb 
eliminiramo spremenljivko $S(t)=N-J(t)-C(t)$. 

Podrobnejšo razlago modela si lahko preberete članku
na naslovu

\texttt{http://www-unix.ecs.umass.edu/\~gong/papers/codered.pdf}.

Enačbe (\ref{eq:ODE}) skupaj z začetnimi vrednosti spremenljivk v modelu, 
določajo začetno nalogo, ki jo bomo reševali z metodo Runge-Kutta reda 2 
za sisteme enačb. Spremenljivke, ki nastopajo v enačbi (\ref{eq:ODE}) postavimo 
v stolpec $\mathbf{Y(t)}=[I(t); J(t); C(t)]$. Desne strani pa so podane z vektorsko funkcijo
\begin{eqnarray*} 
    \mathbf(f)(t,\mathbf(Y))&=[&(\beta(t)D-\gamma)I;\\
	& &\beta D*I;\\
	& &\mu D*J],
\end{eqnarray*}
kjer je $D = N-J-C$.
\begin{figure}[h]
	\includegraphics[width=\textwidth]{crvifig.pdf}
	\caption{Vse 3 komponente rešitve v odvisnosti od časa(v urah)}
\end{figure}
Parametri in začetne vrednosti primerne za modeliranje napada iz leta 2001: 
$N=10^6$, $Z(0)=C(0)=0$, $I(0)=1$, $\eta = 3$, 
$\gamma =0.05$, $\mu=0.06/N$ in $\beta_0 = 0.8/N$.   
\end{document}

