archnisse.blogg.se

Plugg-dagbok

Fördelningar

Publicerad 2014-03-10 11:48:04 i Allmänt,

Det finns vissa fördelningar som uppträder ur sannolikheter.
 
Normalfördelning
 
Hypergeometrisk fördelning
 
Binomialfördelning
 
Poissonfördelning
 
Exponentialfördelning
 
För-första-gångenfördelning
 
 

Sannolikhet

Publicerad 2014-02-08 20:02:00 i Matte, Sannstat,

Egenskaper:
 
$ 0 <= P(x) <= 1$
 
$P(x) = 1 - P(x*)$
 
Betingad sannolikhet
£P(A|B) = \frac{P(A \cap B)}{P(B)}£
Om $P(B) > 0$
 
Oberoende utfall
Ekvivalenta påståenden om oberoende:
 
1. $A$ och $B$ oberoende.
2. $A*$ och $B$ oberoende.
3. $A$ och $B*$ oberoende.
4. $A*$ och $B*$ oberoende.
 
Definition:
$A$ och $B$ är oberoende om:
£ P(A \cap B) = P(A) * P(B) £
gäller.
Detta ger:
£ P(A|B) = \frac{P(A \cap B)}{P(B)} = \{ober.\} = \frac{P(A)*P(B)}{P(B)} = P(A) £
 
 
Bayers sats
 
Lagen om total sannolikhet
 
 

Formler

Publicerad 2014-02-08 17:21:00 i Matte, Sannstat,

Permutationer:
 
£P(n, k) = \frac{n!}{(n-k)!}£
 
Kombinationer:
"En kombination är en permutation där man inte bryr sig om ordningen"
tex, 5 personer ska sitta på 3 stolar. En permutation räknar på hur många olika sätt de kan sitta på stolarna, så att samtliga haft samtliga som granne, en kombination räknar hur många olika grupper som kan formas utan hänsyn till hur de sitter.
 
£C(n,k) = \frac{n!}{k!(n-k)!}£
 
 
Binomialfördelning
När använda?
Används när antalet lyckade försök räknas vid oberoende upprepningar av samma försök. Dvs "Försök med återläggning"
$n$ oberoende försök upprepas och precis $k$ av dessa lyckas.
Beteckning: Bin($n$, $p$)
 
Formel för $n$ försök, $k$ lyckanden och $p$ sannolikhet:
£ P_{X}(k) = \bigg ( \begin{array}{c} n \\ r \end{array} \bigg ) p^k (1 - p)^{n-k}£
 
Med denna sannolikhetsfunktion säges $X$ vara Binomialt fördelad.
 
 

Klassiska sannolikhetsdefinitionen

Publicerad 2014-02-08 14:50:00 i Matte, Sannstat,

Den klassiska sannolikhetsdefinitionen är ganska intuitiv, kvoten mellan antalet möjliga lyckade utfall och totala antalet möjliga utfall.
 
$g = gällande \space utfall$
$m = möjliga \space utfall$
 
£p = \frac{g}{m}£

Stokastiska variabler

Publicerad 2014-02-05 19:55:00 i Matte, Sannstat,

Stokastiska variabler eller "Random variables" på engelska är variabler som antar olika värden och används i sannolikhetsläran för att anta olika värden på utfall.
 
Det finns två typer av stokastiska variabler:
Diskreta
Diskreta stokastiska variabler har egenskapen att de är ändligt många, det GÅR att räkna upp antalet. Spelar ingen roll om det sträcker sig upp till en miljard eller högre, sålänge de går att räkna. Exempel är antalet dollar som omsätts en dag av amerikanska börsen (eget), det är ett stort antal men inte oändligt.
 
Kontinuerliga
Kontinuerliga stokastiska variabler går inte att räkna upp, det finns ett oändligt antal värden som variablen kan anta. Exempel är "den exakta vinnartiden för en olympisk simmare" (khan academy "Discrete and continuous variables"), tiden som vinnaren tilldelas är avrundad till hundradelar, men det finns ett oändligt antal decimaler som vi inte kan peka ut, därav en kontinuerlig stokastisk variabel.
 
 
Väntevärde
Väntevärdet för $X$, $E(X)$ översätts till "expectation", det förväntade värdet för $X$.
I ett lotteri kan man tala om förväntad vinst, med avseende på samtliga vinster och deras sannolikhet skapas ett genomsnitt.
£ E(X) = \sum_{alla \space k}{} k P_{X}(k)£
 
 
£ E(X) = \int_{-\infty}^{\infty} x f_{X} (x) dx£
 
Vilken som passar bäst av dessa beror på om det är en diskret eller kontinuerlig stokastisk variabel.
 
Spridningsmått
Varians, definieras genom $V(X)$
£ V(X) = E((X - E(X))^2) = E((X - \mu)^2) £
$ \mu = E(X) $
Kan även definieras med hjälp av samtliga punkter i datan, men $E(X)$ är fortfarande inblandat så det kanske bara blir samma sak i slutet ändå.
(X - E(X)) ^2 för varje X i datan. Vilket är precis vad det sista i formeln säger, antar jag. Den med $\mu$.
 
Standardavvikelse
£D(X) = \sqrt{V(X)}£

Randvärdesproblem Diffekvationer

Publicerad 2013-10-26 14:58:00 i Diffekvationer, Matte, Numme,

Randvärdesproblem!
 
 Innebär att de givna värdena till en Diffekvation inte befinner sig i början av intervallet, vid samma ställe, utan finns för olika $x$.
 
För begynnelsevärden är det $y$ som sökes för $x$-värdet en bit bort från ursprungsplatsen. Vid ett Randvärdesproblem sökes snarare $y$-värdet för funktionen mellan startpunkten $a$ och slutpunkten $b$.
 
 

Högre ordningens Diffekvationer

Publicerad 2013-10-25 16:52:00 i Diffekvationer, Matte, Numme,

Standardform:
$u'' = F(t, u, u')$
Detta kan substitioneras till ett system av två första ordningens diffekvationer med substitioneringen
$y_1 = u, y_2 = u'$
Som leder till systemet
$y'_1 = y_2, y'_2 = F(t, y_1, y_2)$
 
På vektorform blir det
$y' = f(t,y) \quad \text{där} \quad f = (y_2, F(t, y_1, y_2))$
 
En $n$-te ordningens diffekvation,
$u^{(n)} = f(t, u, u', ... , u^{(n-1)})$
kan på motsvarande vis alltid skrivas om till ett system av $n$ st första ordningens diffekvationer.
 
Och där vekrar det som att det är klart, man har sitt $F$ som vi vet hur vi applicerar i RK4.

I teori-boken 8.5 ges ett väldigt bra exempel på en högre ordningens diffekvation med RK4. Det man vill få ut är funktionen av diffekvationen, om inget annat efterfrågas antar jag.. i dunno. Men med RK4 får man funktionen som jag fattar det.

Det nya ekvationssystemet kan var för sig med givna startvärden räknas ut med RK4 som har högst nogrannhet. Det är bara ett system var för sig, för smidig MATLAB-kod kan man med fördel använda sig av vektorer för att slippa fler variabler.

första ordningens Diffekvationer

Publicerad 2013-10-25 15:58:00 i Diffekvationer, Matte, Numme,

It has come to this.. Diffekvationer känns som den största delen i nummen.
 
Alla de numeriska metoder vi använder är stegmetoder (richardsonsextrapolation? :D) och beräknar approximationer i varje steg för funktionen.
 
Eulers metod
Trunkeringsfel: proportionellt mot $h^2$
Det kallas även för lokalt fel, dvs. felet i varje steg.
Globala felet är det felet som samtliga lokala fel har samlat ihop, är proportionellt mot $h$.
För att förbättra ett värde med Eulers metod får man skilja på om det är slutvärdet eller varje enskilt värde vi vill förbättra. En genomgående förbättring i varje punkt skulle ge mindre lokala fel och därav ett mindre globalt fel, och det globala felet kan förbättras genom att använda $p=1$. Men jag blir lite osäker på hur man kan göra nu.
 
Första odrningens diffekvation:

Första ordningens diffekvation innebär att den involverar $y'$ och $y$.
Standardform: $y' = f(x, y)$ där $f(t, y)$ alltså är ett samlat uttryck med $t$ och $y$.
Eulers metod ger då följande:
£y_{i+1} = y_i + hf(t_i, y_i)£
där $y_{i+1}$ är approximationen till lösningen då variablen $t$ flyttas steget $h$, alltså vid $t_{i+1}$
En härledning kan göra med hjälp av taylorutveckling, och även med framåtdifferenskvot.
 
Eulers metod är en så kallad enstegsmetod, eftersom den bara utnyttjar värdet i en punkt för varje steg. Geometriskt sett räknar man ut lutningen i en punkt och låter den vara konstant ett steg $h$ framåt.
 
 Runge-Kuttas metod

Runge-Kutta delas upp i RK2 och RK4.
RK2
Runge-kutta baserar sig på Euler vill jag påstå när den utnyttjar nuvarande punkt och en approximerad nästa punkt för att ge en bättre gissning för sitt steg.
 
£y_{i+1} = y_i + \frac{h}{2}\Big(f_1 + f_2 \Big)£
där
$f_1 = f(t_i, y_i)$ (Eulers) och
$f_2 = f(t_i+h, y_i + hf_1)$ En andra punk baserad på Euler helt enkelt
 
Globala felet i RK2 är proportionellt mot $h^2$
 
RK4
RK4 är lik RK2 i metoden, men den använder sig av fler punkter. Den är inte mer komplex direkt, bara lite mer att skriva och mycket högre nogrannhet.
 
£y_{i+1} = y_i + \frac{h}{6} \Big ( f_1 + 2f_2 + 2f_3 + f_4 \Big )£
där
$f_1 = f(t_i, y_i)$
$f_2 = f(t_i+\frac{h}{2}, y_i+\frac{hf_1}{2})$
$f_3 = f(t_i+\frac{h}{2}, y_i+\frac{hf_2}{2})$
$f_4 = f(t_i+h, y_i+hf_3)$
 
RK4 har ett globalt proportionellt mot $h^4$, såna grejer!

Sekantmetoden (istället för Newton-Raphson)

Publicerad 2013-10-25 14:33:00 i Matte, Numme,

Sekantmetoden har fördelen att funktionen inte behöver deriveras för att få ut ett värde.
Den går ut som så att man ger två (2) startgissningar, som man sedan drar ett streck emellan, tar reda på vart strecket skär x-axeln, och sätter det värdet som nytt x-värde, räknar ut funktionens värde i den punkten och fortsätter.
Algoritm:

$\bullet$ Utgå från två startgissningar $x_0$ och $x_1$; beräkna $f_0 = f(x_0)$
$\bullet$ (*) Beräkna $f_1 = f(x_1)$
$\bullet$ Bilda $\delta x = -f_1 \times \frac{(x_1 - x_0)}{f_1 - f_0}$
$\bullet$ Uppdatera: $x_0 = x_1$, $f_0 = f_1$, $x_1 = x_1 + \delta x$
$\bullet$ Upprepa från (*) ända tills korrektionstermen $\delta x$ blivit så liten till sitt belopp att den gott och väl hamnar inom den begärda felgränsen.
 
Sekantmetoden lämpar sig bäst då funktionen är svår att derivera. Nackdelen är att den kräver två startgissningar och den kräver fler itereringar.

Numerisk Integration

Publicerad 2013-10-25 13:42:00 i Matte, Numme,

Trapetsregeln:
Trapetsregeln går ut på att man delar upp integralen i ett antal trapetser för att beräkna integralens värde.
£I \approx T(h) = h(\frac{f(a)}{2}+f(a+h)+f(a+2h)+...+f(a+(n-1)h)+\frac{f(b)}{2})£
där $h = \frac{b-a}{n}$ och $n$ är antalet intervall.
 
Lite kortare är trapetsregeln:
 
£I \approx T(h) =h \Bigg ( \sum_{i=1}^{n+1}f_i - \frac{f_1 + f_{n+1}}{2} \Bigg )£
 
Vilket i MATLAB kan skrivas:
$Th = h*(sum(f) - (f(1)+f(n+1))/2)$
där $f$ är en vektor med funktionsvärden i alla punkter.
 
Om man vill förbättre värdet från Trapetsregeln kan man använda richardsonsextrapolation återigen. Metoden kallas då för Rombergs metod.
 
Extrapolering:
Det vi behöver veta är att Trapetsregeln har kvadratisk konvergens, och med halverad stegläng $( Q = 2 )$ det det att Simsponvärdet räknas ut av:
£S = T_2 + \frac{T_2 - T_1}{Q^2 - 1} = T_2 + \frac{T_2 - T_1}{3}£
 
Simpsonvärdet kan antingen erhållas med extrapolation av Trapetsregeln eller Simpsonformel, vilket är lite mer komplicerad Trapetsformel. Simpsonformeln däremot har ordningsgrad 4, och vi kan med den vetskapen extrapolera ytterligare för att få ett exaktare värde.
 
Extrapolera ytterligare:
Vi upprepar helt enkelt Richardsonsextrapolation med $p = 4$ efter att ha fått ut 2 S-värden:
£B = S_2+\frac{S_2 - S_1}{2^4 - 1} = S_2 +\frac{S_2 - S_1}{15}£
Även här utgår vi med $Q = 2$, alltså halverad steglängd.
 
quad:
I MATLAB kan man använda quad-funktion som löser integraler. Med en funktion lagrad i fq.m anropar man med:
$quad(@fq, start, slut)$
För att få lägre feltolerans:
$quad(@fq, start, slut, feltolerans)$
$@fq$ kan även bytas ut mot en inline som parameter.

Richardsonextrapolation

Publicerad 2013-10-25 13:37:00 i Matte, Numme,

Richardsonexptrapolation utnyttjag Taylorutvecklingen som man tar reda på felet i derata-approximationen med för att ta fram ett bättre värde som ger färre iterationer.
 
$\delta h$ får beteckna derivatan i en punkt med ett visst h.
 
Framåtdifferens:
Vid två olika steglängder kan man räkna ut en bättre derivata med:
$f'(x) \approx \delta h_2 + \frac{\delta h_2 - \delta h_1}{9}$
Ovanstående beror av stegländens kvot, se Generellt nedan för förklaring.
 
Centraldifferens:

Centraldifferensen har en annan konvergens och får ett lite annorlunda utseende.
$f'(x) \approx \delta h_2 + \frac{\delta h_2 - \delta h_1}{99}$
Samma gäller denna som ovan.
 
Generellt:
Generellt kan man alltid använda richardsonextrapolation vid stegmetoder, det man behöver känna till är $trunkeringsfelet$ som jag tidigare i tal om derivator och här ovan har refererat till som $felet$ enbart. Med ett kännt trunkeringsfel $h^p$ och två uträkningar $F_2$ och $F_1$ där $F_1$ har steglängden $h$ och $F_2$ har steglängden $\frac{h}{Q}$ får vi:
$F* = F_2 + \frac{F_2 - F_1}{Q^p - 1}$

Derivator & andraderivator

Publicerad 2013-10-25 13:11:00 i Matte, Numme,

För att numeriskt beräkna derivatan av ett givet funktionsuttryck i en given punkt finns framåtdifferens och centralldifferens att tillgå.
 
Framåtdifferens kommer direkt från derivatans defitinion vid små $h$:
$f'(x) \approx \delta h = \frac{f(x-h)-f(x)}{h}$
Felet i framåtdifferensen är proportionellt mot $h$.
 
En bättre uppskattning av derivatan är centraldifferens:
$f'(x) \approx \delta h = \frac{f(a+h)-f(a-h)}{2h}$
Felet i centraldifferensen är proportionellt mot $h^2$, vilket är bättre.
 
Man kan däremot inte gör antagandet att ett mindre h automatiskt ger bättre värde, eftersom MATLAB efter ett tag inte kan hantera lägre siffror och siffrorna avrundas helt enkelt till något man inte avsett.
 
 
Andraderivata:

$f''(x) \approx \frac{f(a+h) - 2f(a) + f(a-h)}{h^2}$
Felet för andraderivatan är proportionellt mot $h^2$
 
Samtliga derivator och andraderivator kan förbättras med $Richardsonextrapolation$. Det säger till och med kurslitteraturen är magi.

Newtons metod för icke linjära ekvationssystem

Publicerad 2013-10-25 12:43:00 i Matte, Numme,

För över ekvationerna på standardformen $f(x) = 0$
 
I fallet då det gäller fler ekvationer och eller variabler vill vi ställa upp en Jakobianmatris. När derivatan/derivatorna helt enkelt inte representerar 1 (ett) tal.
 
Iterationen går då till som så att $\delta x$ räknas ut av $-J \backslash F$, där $J$ är Jakobianen och $F$ funktionerna i systemet.
 
Om jakobianen inte kan räknas ut numeriskt går det oftast lika bra att numeriskt approximera den med antingen $framåtdifferens$ eller $centraldifferens$.
 
Iterationen beror då av fler $\delta$, vilket gör att de måste sammanfogas för att hitta en felgräns att iterera till. $\delta norm$ kan formas via $norm(\delta x, inf)$ som sedan kan användas för felgräns.
 
 
Konvergens: Kvadratisk
 
Algoritm för Newtons metod för ett icke linjärt system:

$\bullet$ Bestäm de analytiska uttrycken för elementen i jacobianmatrisen $J(x)$ genom partiella deriveringar.
$\bullet$ Utgå från så goda startgissningar som möjligt till de obekanta $x_i$
$\bullet$ (*) Beräkna $f$ och $J$ med instatta $x_i$-värden.
$\bullet$ Lös det linjära systemet $J \delta x = -f$ (i MATLAB med $\delta x = - J\backslash f$)
$\bullet$ Uppdatera: $x = x + \delta x$
$\bullet$ Upprepa från (*) tills önskad nogrannet erhålls.
 

Minsta kvadratmetoden

Publicerad 2013-10-25 12:06:00 i Matte, Numme,

Utgångspunkten är ett överbestämt ekvationssystem som inte har en rätt lösning på variablerna. Då tar man fram det svaret med minst fel.
 
Utgångspunkten kan vara $Ax = y$ där $A$ är en $4*2$-matris och, $x$ en $2*1$-matris och $y$ en $4*1$-matris. i MATLAB ställs då upp:
$Ax = y;$
$x = A\backslash y;$
 
För anpassning av två tabeller indata som ska ta reda på hur de förhåller sig till varandra ställer man upp en matris $A$ som lämpar sig för sambandet.
 
En rät linje kan vara en god start, där man tex. har indata $t$ och utdata $y$, kan matrisen $A$ ställas upp som:
$A = [ones(size(t))   t]$ vilket blir en matris med en kolumn ettor, och en kolumn med $t$.
Då fås formeln $c_1 + c_2t$ fram som en approximation till formeln.
 
Residualkurva: Residualkurvan kan användas för att få reda hur grafen kan förbättras. Residualkurvan är en kurva med felen i varje punkt. Den ställs upp som:
$r = y - A*c$, där $y$ är utdata, $A$ sin uppställda matris och $c$ resutlaten man fått ut av minsta kvadratmetoden.
 
Felkvadratsumma:
Residualvektorn i kvadrat:
$fkvsum = r' * r$

Newton-Raphssons metod

Publicerad 2013-10-25 11:36:00 i Matte, Numme,

En funktion som man vill räkna ut nollstället till,
 
$f(x)$
$f'(x)$ (Numeriskt uträknad)
 
Börja med att skapa en startgissning $x$ för när funktionen är noll.
 
Börja sedan iterera:
 
while $abs(h) > 1.E-6$
    $h = \frac{f(x)}{f'(x)}$
    $x = x - h$
end
 
 
Konvergens: kvadratisk, verifieras av $|x_{n+1} - a| \approx K|x_{n} - a|^2$, mellan iterationerna ska man alltså kunna hitta en ungefärlig konstant K via sambandet.
 
Fler rötter: Se till att hålla koll på fler startgissningar och lagra $x$ i en vektor.
 

Senaste inläggen

Kategorier

Arkiv

Prenumerera och dela