Løsningsforslag øving 12, ST1301

Like dokumenter
Løsningsforslag ST2301 Øving 11

Bioberegninger - notat 4: Mer om sannsynlighetsmaksimering

Prosjektoppgaver om diusjonsprosesser og diusjonstilnærmelse

Notat 4 - ST februar 2005

Løsningsforslag øving 8, ST1301

Prosjektoppgaver om diusjonsprosesser og diusjonstilnærmelse

MA0002 Brukerkurs i matematikk B Vår 2016

MA0002 Brukerkurs i matematikk B Vår 2013

Programmering i R - del 2

TMA4245 Statistikk. Innlevering 3. Norges teknisk-naturvitenskapelige universitet Institutt for matematiske fag

Løsningsforslag øving 10, ST1301

La U og V være uavhengige standard normalfordelte variable og definer

Notat 2, ST Sammensatte uttrykk. 27. januar 2006

Løsningsforslag ST2301 Øving 6

Fasit for tilleggsoppgaver

TMA4240 Statistikk Høst 2015

Matematisk statistikk og stokastiske prosesser B, høsten 2006 Løsninger til oppgavesett 5, s. 1. Oppgave 1

A. i) Sett opp en frekvenstabell over de fire mulige kombinasjonene av kjønn og røykestatus. Dvs. fyll inn. Ikke - røyker Sum Jente Gutt Sum 25

Programmering i R. 6. mars 2004

Løsningsforslag MAT 120B, høsten 2001

TMA4245 Statistikk Eksamen desember 2016

MAT UiO. 10. mai Våren 2010 MAT 1012

Løsningsforslag ST2301 Øving 6

Løsningsforslag oblig 1 STK1110 høsten 2014

Diagonalizering. En n n matrise A sies å være diagonaliserbar hvis den er similær med en diagonalmatrise D. A = PDP 1

Oppgaven består av 9 delspørsmål som anbefales å veie like mye. Kommentarer og tallsvar er skrevet inn mellom << >>. Oppgave 1

Løsningsforslag ST2301 Øving 4

år i alder x i tid y i i=1 (x i x) 2 = 60, 9

LØSNINGSSKISSE TIL EKSAMEN I FAG SIF august 2001

Oppgave 1. . Vi baserer oss på at p 47 1 og p 2 er tilnærmet normalfordelte (brukbar tilnærming). Vi har tilnærmet at (n 1 = n 2 = 47)

Diagonalisering. Kapittel 10

TMA4240 Statistikk Høst 2009

MAT UiO mai Våren 2010 MAT 1012

Eksamensoppgave i Løsningsskisse TMA4240 Statistikk

TMA4240 Statistikk Høst 2015

Løsningsforslag ST2301 Øving 2

Tidligere eksamensoppgaver

Emne 9. Egenverdier og egenvektorer

Løsningsforslag statistikkeksamen desember 2014

TALLSVAR. Det anbefales at de 9 deloppgavene merket med A, B, teller likt uansett variasjon i vanskelighetsgrad. Svarene er gitt i <<< >>>.

Utvalgsfordelinger (Kapittel 5)

ECON2130 Kommentarer til oblig

Snøtetthet. Institutt for matematiske fag, NTNU 15. august Notat for TMA4240/TMA4245 Statistikk

Eksamensoppgave i TMA4240 Statistikk

for x 0 F X (x) = 0 ellers Figur 1: Parallellsystem med to komponenter Figur 2: Seriesystem med n komponenter

Øving 5 Diagonalisering

Kapittel 8: Tilfeldige utvalg, databeskrivelse og fordeling til observatorar, Kapittel 9: Estimering

Forelesning 4 STK3100

Matematikk Øvingsoppgaver i numerikk leksjon 7 Løsningsforslag

Løsningsforslag Eksamen M001 Våren 2002

Løsningsforslag ST2301 Øving 2

TMA4245 Statistikk Eksamen desember 2016

Forelesning 7: Store talls lov, sentralgrenseteoremet. Jo Thori Lind

Kap. 8: Utvalsfordelingar og databeskrivelse

Egenverdier for 2 2 matriser

Forelesning 6: Punktestimering, usikkerhet i estimering. Jo Thori Lind

Matematikk Øvingsoppgaver i numerikk leksjon 4 m-ler

L12-Dataanalyse. Introduksjon. Nelson Aalen plott. Page 76 of Introduksjon til dataanalyse. Levetider og sensurerte tider

EKSAMENSOPPGAVE I BI2033 POPULASJONSØKOLOGI

MA0002 Brukerkurs i matematikk B Vår 2017

Eksamensoppgave i TMA4240 Statistikk

Løsningsforslag, eksamen statistikk, juni 2015

TMA4240 Statistikk 2014

Løsningsforslag ECON 2130 Obligatorisk semesteroppgave 2017 vår

TMA4240 Statistikk Høst 2015

Løsningsforslag ST2301 Øving 10

Kap. 10: Inferens om to populasjoner. Eksempel. ST0202 Statistikk for samfunnsvitere

Kap. 5 Egenverdier og egenvektorer

Oppgave 1. X 1 B(n 1, p 1 ) X 2. Vi er interessert i forskjellen i andeler p 1 p 2, som vi estimerer med. p 1 p 2 = X 1. n 1 n 2.

UNIVERSITETET I OSLO ØKONOMISK INSTITUTT

betyr begivenheten at det blir trukket en rød kule i første trekning og en hvit i andre, mens B1 B2

1. Finn egenverdiene og egenvektorene til matrisen A = 2 1 A =

UNIVERSITETET I OSLO ØKONOMISK INSTITUTT

Tiden går og alt forandres, selv om vi stopper klokka. Stoffet i dette kapittelet vil være en utømmelig kilde med tanke på eksamensoppgaver.

ÅMA110 Sannsylighetsregning og statistikk Løsningsforslag til eksamen høst 2010, s. 1. Oppgave 1. Histogram over frekvenser.

Matematikk Øvingsoppgaver i numerikk leksjon 6 Løsningsforslag

ÅMA 110 (TE 199) Sannsylighetsregning og statistikk Løsningsforslag til eksamen vår 2005, s. 1. Oppgave 1

EKSAMEN I TMA4285 TIDSREKKEMODELLER Fredag 7. desember 2012 Tid: 09:00 13:00

ST0103 Brukerkurs i statistikk Forelesning 26, 18. november 2016 Kapittel 8: Sammenligning av grupper

ST0202 Statistikk for samfunnsvitere

ÅMA 110 SANNSYNLIGHETSREGNING MED STATISTIKK Løsningsforslag til regneøving nr. 12 (s. 34)

1.1.1 Rekke med konstante ledd. En rekke med konstante ledd er gitt som. a n (1) n=m

(Det tas forbehold om feil i løsningsforslaget.) Oppgave 1

TMA4240 Statistikk Høst 2007

Kap. 5.2: Utvalgsfordelinger for antall og andeler

A 2 = PDP 1 PDP 1 = PD 2 P 1. og ved induksjon får vi. A k = PD k P 1. Kommentarer:

Oblig 2 - MAT1120. Fredrik Meyer 23. september 2009 A =

Transkript:

Løsningsforslag øving 12, ST1301 Oppgave 1 En to-utvalgs t-test forutsetter at observasjonene i hvert utvalg X 1 ; X 2 ; : : : ; X n og Y 1 ; Y 2 ; : : : ; Y m er uavhengige normalfordelte variable. Hvis testen oppfører seg slik den skal også dersom disse forutsetningene ikke er oppfyllt sier vi at testen er robust. Dersom den nominelle (ønskede) sannsynligheten for type I feil (sannsynligheten for å forkaste H 0 gitt at H 0 er sann, signikansnivået) er valgt lik, innebærer dette at vi ønsker at den reelle sannsynligheten for type I feil skal ligge nære også dersom dataene i virkeligheten ikke er normalfordelte. a) Anta at vi observerer følgende to utvalg: A: 0.41 0.61 0.85 2.19 0.92 0.26 0.38 1.06 0.43 0.44 B: 5.60 3.28 3.67 0.75 0.57 2.32 6.40 1.60 1.13 0.86 Anta at dataene er normalfordelte samme varians i hvert utvalg og med forventninger A og B. Undersøk om A < B ved hjelp av funksjonen t.test i R. Husk å spesisere antakelsen om like varianser i hver gruppe. x <- c(0.41, 0.61, 0.85, 2.19, 0.92, 0.26, 0.38, 1.06, 0.43, 0.44) y <- c(5.60, 3.28, 3.67, 0.75, 0.57, 2.32, 6.40, 1.60, 1.13, 0.86) t.test(x,y,alt="less",var.equal=t) b) Programmer en funksjon som beregner den reelle sannsynligheten for type I feil dersom dataene i virkeligheten er eksponentielt fordelte ved å simulere 1000 realisasjoner av de to utvalgene. Tilhørende simulerte verdier av testobservatoren kan beregnes ved å referere til $statistic-komponenten i listen som returneres av t.test. Bruk funksjonen til å beregne den reelle sannsynligheten for type I feil dersom størrelsene på de to utvalgene er 2, 5, 10, og 20. c) Ser dataene i punkt a) normalfordelte ut? Vil du vurdere test-resultatet i punkt a) som pålitelige ut i fra simuleringsresultatene i punkt b)? robusthet <- function(n=10,m=10,nsim=1000) { teller <- 0 t.kritisk <- qt(0.05,df=m+n-2,lower.tail=f) for (i in 1:nsim) { 1

x <- rexp(n=n) y <- rexp(n=m) if (t.test(x,y,alt="greater",var.equal=t)$stat > t.kritisk) teller <- teller + 1 teller/nsim Oppgave 2 Leslie-matriser og alderstrukturerte modeller Anta at vi har en populasjon hvor reproduksjon inntreer i en kort puls på et gitt tidspunkt hvert år, f.eks. om våren. Anta videre at høyeste alder er 4 år, at overlevelsen fra alder i 1 til alder i er gitt ved s i, og at s 1 = 0:2, s 2 = 0:5, s 3 = 0:7 og s 4 = 0:5. Vi ser kun på hunnene i populasjonen. (Dette er vanlig å gjøre for organismer hvor hannene ikke bidrar til oppfostring av avkom.) Anta at hunner ved alder i i snitt får f i hunnlige avkom og at f 1 = 2, f 2 = 4, f 3 = 4 og f 4 = 2. Hvis vi lar søylevektoren N t representere antall individer av ulik aldere ved tidspunkt t kan vi nå konstruere en Lesliematrise A slik at N t+1 = AN t (1) på to måter, enten ved å la elementene i N t representere antall individer i de ulike aldersklassen rett forut for reproduksjon (såkalt prebreeding census) eller rett etter reproduksjon (postbreeding census). For prebreeding census vil elementene i N t, antallet individer N 1;t ; N 2;t ; : : : ; N 4;t i aldersklasse 1, 2, 3 og 4, være individer som er henholdsvis nesten ett, to, tre og re år gamle ved tidspunkt t. Census (opptelling av populasjonen) er i dette tilfelle etterfulgt av reproduksjon og så overlevelse før neste census. Vi har da at N i+1;t+1 = s i+1 N i;t : (2) Antall individer i første aldersklasse ved tidpunkt t + 1 blir N 1;t+1 = 4X i=1 s 1 f i N i;t ; (3) fordi nyfødte også må overleve i nesten ett år fram til neste census. Skriver vi ligning (2) og (4) på matriseform som i (1) får vi at A = 2 64 s 1f 1 s 1 f 2 s 1 f 3 s 1 f 4 3 s 2 0 0 0 0 s 3 0 0 0 0 s 4 0 2 75 : (4)

For postbreeding census vil elementene i N t, antallet individer N 1;t ; N 2;t ; : : : ; N 4;t i aldersklasse 1, 2, 3 og 4, være individer som er henholdsvis såvidt null (nyfødte), ett, to og tre år gamle ved tidspunkt t. Nå er census etterfulgt av overlevelse og så reproduksjon rett forut for neste census. Nå vil antall individer i andre aldersklasse ved tid t + 1, N 2;t+1, altså antall individer som såvidt er ett år gamle ved tid t + 1, være antall i første aldersklasse (nyfødte) ved tid t, N 1;t multiplisert med overlevelsen fra alder 0 til 1, s 1. Generellt blir N i+1;t+1 = s i N i;t : (5) Merk forskjellen fra (2). Videre vil f.eks. andre aldersklasse ved tid t, N 2;t, d.v.s. individer som er såvidt ett år gamle bidra med s 2 f 2 nyfødte hver fordi de først må overleve til alder 2 hvor de får f 2 avkom hver i snitt. Generellt blir dermed N 1;t+1 = 4X i=1 s i f i N i;t : (6) Legg igjen merke til forskjellen fra (3). a) Hvordan blir matrisen A nå seende ut uttrykt ved s 1 ; : : : ; s 4 og f 1 ; : : : ; f 4? A = 2 64 s 1f 1 s 2 f 2 s 3 f 3 s 4 f 4 3 s 1 0 0 0 0 s 2 0 0 0 0 s 2 0 75 : (7) b) Programmer to funksjoner som beregner A for henholdsvis prebreeding og postbreeding census. La to vektorer som inneholder overlevelsesparameterne s 1 ; : : : ; s 4 og fekunditetene f 1 ; : : : ; f 4 være innargument til funksjonene. Hint: Funksjonene matrix, diag, bind, rbind vil kunne være nyttige. c) Beregn vekstraten til populasjonen basert på hver av Leslie-matrisene ved å se på første egenverdi (beregnes v.h.a. funksjonen eigen i R.) Kommenter resultatet. d) Beregn også de de stabilie aldersfordelingene ved å se på første egenvektor. Hvorfor blir disse forskjellige for post- og prebreeding census? s <- c(.2,.5,.7,.5) f <- c(2,4,4,2) pre <- function(s,f) { n <- length(s) rbind(s[1]*f,cbind(diag(s[2:n]),rep(0,n-1))) 3

## Et par alternative løsninger som ikke er fullt så uleselige...? pre <- function(s,f) { n <- length(s) A <- matrix(0,n,n) A[1,] <- s[1]*f # første rad diag(a[-1,-n]) <- s[2:n] # tilordning til diagonalen til nedre venstre blokk A pre <- function(s,f) { n <- length(s) A <- matrix(0,n,n) A[1,] <- s[1]*f for (i in 2:n) # tilordning av elementene ved hjelp av for-løkke... A[i,i-1] <- s[i] A pre(s,f) eigen(pre(s,f))$val[1] post <- function(s,f) { n <- length(s) rbind(((s*f)[1:n],cbind(diag(s[1:(n-1)]),rep(0,n))) post(s,f) eigen(post(s,f))$val[1] normaliser <- function(x) x/sum(x) normaliser(eigen(pre(s,f))$vect[,1]) normaliser(eigen(post(s,f))$vect[,1]) Aldersfordelingen basert på modell med pre- og postbreeding census blir noe forskjellige fordi aldersfordelingen endrer seg gjennom året selv om populasjonen har nådd stabil aldersfordeling. e) Ved et gitt tidspunkt t vil antall i hver aldersklasse være gitt ved N t = A t N 0. Anta at populasjonen bare består 100 individer i alderklasse 1 ved tidspunkt t = 0. Beregn først antall i hver alderklasse ved tidspunkt t = 6 ved hjelp av matrisemultiplikasjon. 4

f) I stedet for å beregne A t ved gjentatt matrisemultiplikasjon slik som over kan dette også gjøres ved å diagonalisere A. Det kan vises at vi kan skrive matrisen A på formen A = PDP 1 hvor P er en n n matrise satt sammen av egenvektorene til A og D er en n n diagonal matrise med elementer lik egenverdiene til A. Denne framgangsmåten forutsetter at A er diagonaliserbar. Bruk diagonaliseringen til å beregne antall individer i hver alderklasse ved t = 6 og t = 50. Hint: Husk at A t = (PDP 1 ) t = PD t P 1 og at D t selv er diagonal. Oppgave 3 Simulering av stokastiske prosesser. Genetisk drift. Vi betrakter populasjon av en diploid organisme (kromosomene opptrer i par) med konstant populasjonsstørrelse N. I følge den idealiserte Wright- Fisher modellen er antall kopier av et allel (en variant av et gen) i generasjon t+1, X t+1, gitt at X t kopier av allelet er tilstede i generasjon t (0 X t 2N) binomisk fordelt med parametere p t = X t =(2N ) og n = 2N. Vi har alstå at X t+1 bin( X t ; 2N ) (8) 2N Dermed er E(X t+1 jx t ) = X t og Var(X t+1 jx t ) = 2Np t (1 p t ). Ser vi på allelfrekvensen p t = X t =(2N ) har vi at E(p t+1 jp t ) = p t og Var(p t+1 jp t ) = p t(1 p t ) 2N I forventingsverdi vil altså frekvensen av et allelet være den samme som i forrige generasjon men frekvensen vil endre seg; vi har såkalt genetisk drift. Vi ser av (9) at jo mindre populasjonsstørrelsen er, jo mer vil allelfrekvensen endre seg som følge av genetisk drift. Programmer en funksjon drift som simulerer en realisasjon av prossesen over, d.v.s. antall kopier av allelet X 1 ; X 2 ; : : : ; X m i generasjon 1; 2; : : : ; m. La populasjonsstørrelsen N, antall kopier av allelet i generasjon 1, X 1, og antall generasjoner m være innargumenter. Lag et plot av 10 realisasjoner av prosessen ved hjelp av gjentatte kall til drift, plot og lines. La X 1 = 5, N = 10 og m = 50. (9) drift <- function(x1,n,m) { x <- rep(na,m) x[1] <- x1 for (t in 2:m) { 5

x[t] <- rbinom(n=1,size=2*n,prob=x[t-1]/(2*n)) return(x) > plot(drift(5,10,50),type="l",ylim=c(0,20)) > lines(drift(5,10,50),lty=2) > lines(drift(5,10,50),lty=3) > lines(drift(5,10,50),lty=4) > lines(drift(5,10,50),lty=5) > lines(drift(5,10,50),lty=6) > lines(drift(5,10,50),lty=7) > lines(drift(5,10,50),lty=8) > lines(drift(5,10,50),lty=9) > lines(drift(5,10,50),lty=10) # Eventuellt for-løkke her... drift(5, 10, 50) 0 5 10 15 20 Programmer en funksjon som simulerer 1000 realisasjoner av prossesen over (ved hjelp av gjentatte kall til drift) og som estimerer sannsynligheten for at p m = 1 gitt at X 1 = 1, N = 10 og m = 200. Hva blir sannsynligheten i forhold til allelefrekvensen p t i første generasjon t = 1. Virker resultatet rimelig? driftsim <- function() { nfikseringer <- 0 # Teller for antall # ganger vi får pm=1 for (i in 1:1000) { Xm <- drift(x1=1,n=10,m=200)[200] # Simuler drift, # tar vare på siste verdi... if (Xm==20) # Er p_m = 1? 6

nfikseringer <- nfikseringer + 1 # Hvis ja, øk teller return(nfikseringer/1000) > driftsim() [1] 0.048 Vi ser at sannsynligheten for at allelefrekvensen ender i tilstanden X t = 20 i siste generasjon t = m blir tilnærmet lik p 1 = X 1 =(2N ) = 0:05. Dette kan forstås på følgende måte. Går vi langt fram i tid (t = 200 er ganske langt fram i tid) vil alle allelene som er tilstede i populasjon tilslutt nedstamme fra kun étt av allelene i generasjon t = 1 (alle allel vil være såkalt identical by descent). Alle de 20 allelene i generasjon t = 1 har samme sannsynlighet for å bli dette allelet, dermed må lim P (p t = 1jp 1 = 1 t!1 20 ) = 1 ): (10) 20 Oppgave 4 Stokastiske prosesser i økologi La N t være antall individer i en gitt populasjon ved tidspunkt t. Anta at N t+1 gitt N t er normalfordelt med forventning og varians E(N t+1 jn t ) = N t + rn t (1 N t ); (11) K Var(N n+t jn t ) = 2 e N 2 t : (12) Dette er en stokastisk versjon Lotka-Volterra modellen med miljøstokastisitet hvor parameteren e 2 kalles miljøvarians. Parameteren r er vekstraten til populasjonen og K bæreevnen. Lag først en funksjon som simulerer en realisasjon av prosessen fn t g fra t = 1 til t = 1000 gitt N 1 = K og returner en vektor som inneholder N 1 ; N 2 ; : : : ; N t som funksjonsverdi. La parameterne r, K, og e 2 være argument. Lag plot av noen realisasjoner av prosessen for K = 100, r = 0:1, og e 2 = 0:05. På hvilken måte endrer populasjonssvingningene seg dersom vi endrer vekstraten r samtidig som andre parametere holdes fast? Tilsvarende, hva skjer om vi endrer på miljøvariansen e? 2 (Det kan være hensiktsmessig å velge f.eks. ylim=c(0,300) i alle plottene for lettere å kunne sammenligne resultatene visuelt.) 7

Oppgave 5 Kaos Betrakt rekursjonsligningen x t+1 = f (x t ) = cx t (1 x t ) (13) hvor 0 < c < 4. Hvis x t går mot en likevekt x når t! 1 må som medfører at x = cx (1 x ); (14) x = 1 c : (15) For x t i nærheten av x har vi tilnærmet at 1 x t+1 = f (x ) + f 0 (x )(x t x ) (16) Siden f (x ) = x kan vi skrive (16) på formen x t+1 x = f 0 (x )(x t x ): (17) Vi ser at dette medfører at avviket fra x, x t (likevektspunktet x er stabilt) hvis x vil konvergere mot null 1 < f 0 (x ) < 1 (18) Fra (13) og (15) får vi at f 0 (x ) = 2 c; (19) som innsatt i (18) medfører at 1 < c < 3 (20) for at x skal være et stabilt likevektspunkt. Vi skal nå undersøke hva som skjer for 3 < c 4. Programmer en funksjon som tar c, x 1, og m som innargumenter og som beregner x 1 ; x 2 ; : : : ; x m og returner denne tallfølgen som funksjonsverdi. Lag så plot av tallfølgen for m = 50, x 1 = :51, og forskjellige valg av c lik 3.1, 3.5, 3.7. Se spesielt på det det tilfelle at c = 3:7 og plot tallfølgen for to nesten identiske startverdier, f.eks. 0:51 og 0:511. Vil det være mulig å forutsi posisjonen til x m gitt at vi ikke kjenner x 1 med fullstendig nøyaktighet? 8

kaos <- function(c,x0,m) { x <- rep(na,m) x[1] <- x0 for (i in 2:m) { x[i] <- c*x[i-1]*(1-x[i-1]) return(x[1:m]) plot(kaos(x0=.51,m=50,c=3.1),type="l") o.s.v... kaos(x0 = 0.51, m = 50, c = 2.9) 0.55 0.60 0.65 0.70 kaos(x0 = 0.51, m = 50, c = 3.1) 0.50 0.55 0.60 0.65 0.70 0.75 kaos(x0 = 0.51, m = 50, c = 3.5) 0.4 0.5 0.6 0.7 0.8 9

kaos(x0 = 0.51, m = 50, c = 3.57) 0.4 0.5 0.6 0.7 0.8 0.9 kaos(x0 = 0.51, m = 50, c = 3.6) 0.4 0.5 0.6 0.7 0.8 0.9 kaos(x0 = 0.51, m = 50, c = 3.9) 0.2 0.4 0.6 0.8 1.0 Vi ser at vi får grensecykler med periode 2, 4, 8, 16, o.s.v. og kaos når c blir tilstrekkelig stor. Vi har sett at vi enten får stabile grensecykler eller kaos for verdier av c > 3. For å få bedre oversikt over oppførselen til prosessen for alle verdier av c skal vi lage et såkalt bifurkasjonsgraf. Denne grafen skal vise hvilke tilstander x t er innom når prosessen har nådd en grensecykel eller kaotisk oppførsel for ulike verdier av c. Dette kan i praksis gjøres ved å lage en for-løkke som løper igjennom en sekvens verdier for c (f.eks. 500 verdier fra 1 til 3). For hver c-verdi itereres prosessen 200 ganger og de siste 100 verdiene legges til som punkter i plottet med points. Bruk pch="." som tilleggsargument til 10

points. plot(na,xlim=c(2.5,4),ylim=c(0,1)) for (c in seq(2.5,4,length=500)) points( rep(c,100), kaos(c=c,x0=runif(1),nsim=200)[101:200], pch="." ) Tilstander 0.0 0.2 0.4 0.6 0.8 1.0 2.5 3.0 3.5 4.0 c 11