25
Simulering og inferens i matematiske modeller fra biologien Simulering og inferens i matematiske modeller fra biologien Lars Nørvang Andersen Institut for Matematik Aarhus, Marts 2015 Lars Nørvang Andersen Simulering og inferens i matematiske modeller fra biologien

Simulering og inferens i matematiske modeller fra biologienmath.au.dk/fileadmin/Files/matlaererdag/2015/slides_LNA_handout.pdf · Aarhus, Marts 2015 Lars Nørvang Andersen Simulering

  • Upload
    others

  • View
    1

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Simulering og inferens i matematiske modeller fra biologienmath.au.dk/fileadmin/Files/matlaererdag/2015/slides_LNA_handout.pdf · Aarhus, Marts 2015 Lars Nørvang Andersen Simulering

Simulering og inferens i matematiske modeller fra biologien

Simulering og inferens i matematiske modellerfra biologien

Lars Nørvang Andersen

Institut for Matematik

Aarhus, Marts 2015

Lars Nørvang Andersen Simulering og inferens i matematiske modeller fra biologien

Page 2: Simulering og inferens i matematiske modeller fra biologienmath.au.dk/fileadmin/Files/matlaererdag/2015/slides_LNA_handout.pdf · Aarhus, Marts 2015 Lars Nørvang Andersen Simulering

Simulering og inferens i matematiske modeller fra biologien

Gorilla projekt - data

Motivationen for projektet var at studere artsdannelse iforbindelse kortlægningen af gorillaens genom.

Lars Nørvang Andersen Simulering og inferens i matematiske modeller fra biologien

Page 3: Simulering og inferens i matematiske modeller fra biologienmath.au.dk/fileadmin/Files/matlaererdag/2015/slides_LNA_handout.pdf · Aarhus, Marts 2015 Lars Nørvang Andersen Simulering

Simulering og inferens i matematiske modeller fra biologien

Model

t = TAt = TAt = TA

t = 0

Oprindeligpopulation

Population1

Population2

Fortid

Nutid

m1→2

m2→1

m1→2

m2→1

Fokus lå på en beskrivelse af den proces som ledte frem til deto populationer, som observeres. Specifikt:

Tidspunktet for opsplitning af den oprindelige population.Tilstedeværelse/fravær af migration.

Lars Nørvang Andersen Simulering og inferens i matematiske modeller fra biologien

Page 4: Simulering og inferens i matematiske modeller fra biologienmath.au.dk/fileadmin/Files/matlaererdag/2015/slides_LNA_handout.pdf · Aarhus, Marts 2015 Lars Nørvang Andersen Simulering

Simulering og inferens i matematiske modeller fra biologien

Gorilla projekt - data

Som data betragtes kolonner i DNA alignments.

Lars Nørvang Andersen Simulering og inferens i matematiske modeller fra biologien

Page 5: Simulering og inferens i matematiske modeller fra biologienmath.au.dk/fileadmin/Files/matlaererdag/2015/slides_LNA_handout.pdf · Aarhus, Marts 2015 Lars Nørvang Andersen Simulering

Simulering og inferens i matematiske modeller fra biologien

Gorilla projekt - data

Datasættet kan således opsummeres i en 10× 10 tabel:

Eastern GorillaAA CC GG TT AC AG AT CG CT GT

Wes

tern

Gor

illa

AA nAAAA nAACC nAAGG nAATT nAAAC nAAAG nAAAT nAACG nAACT nAAGTCC nCCAA nCCCCnCCCC nCCGG nCCTT nCCAC nCCAG nCCAT nCCCG nCCCT nCCGTGG nGGAA nGGCC nGGGG nGGTT nGGAC nGGAG nGGAT nGGCG nGGCT nGGGTTT nTTAA nTTCC nTTGG nTTTT nTTAC nTTAG nTTAT nTTCG nTTCT nTTGTAC nACAA nACCC nACGG nACTT nACAC nACAG nACAT nACCG nACCT nACGTAG nAGAA nAGCC nAGGG nAGTT nAGAC nAGAG nAGAT nAGCG nAGCT nAGGTAT nATAA nATCC nATGG nATTT nATAC nATAG nATAT nATCG nATCT nATGTCG nCGAA nCGCC nCGGG nCGTT nCGAC nCGAG nCGAT nCGCG nCGCT nCGGTCT nCTAA nCTCC nCTGG nCTTT nCTAC nCTAG nCTAT nCTCG nCTCT nCTGTGT nGTAA nGTCC nGTGG nGTTT nGTAC nGTAG nGTAT nGTCG nGTCT nGTGT

For at fortsætte, skal vi opstille en statistisk model for datasåledes at vi udlede likelihood-funktionen L(TA,m1→2,m2→1).Vores model skal sætte os i stand til at tilskrivesandsynligheder til cellerne i vores tabel, hvorefter voreslikelihood-funktionen kan bruges til estimere parametrene.

Lars Nørvang Andersen Simulering og inferens i matematiske modeller fra biologien

Page 6: Simulering og inferens i matematiske modeller fra biologienmath.au.dk/fileadmin/Files/matlaererdag/2015/slides_LNA_handout.pdf · Aarhus, Marts 2015 Lars Nørvang Andersen Simulering

Simulering og inferens i matematiske modeller fra biologien

Wright-Fisher modellen - to alleler

Nutid

Fremtid

Antager blandt andet: Konstant populationsstørrelse, ingenmutationer, ikke-overlappende generationer.

Lars Nørvang Andersen Simulering og inferens i matematiske modeller fra biologien

Page 7: Simulering og inferens i matematiske modeller fra biologienmath.au.dk/fileadmin/Files/matlaererdag/2015/slides_LNA_handout.pdf · Aarhus, Marts 2015 Lars Nørvang Andersen Simulering

Simulering og inferens i matematiske modeller fra biologien

R

R er et open source statistikprogram, som kan hentes påadressen:http://www.r-project.org/

Et populært (og open source) udviklingsmiljø er programmetRStudio, som kan findes på adressen:http://www.rstudio.com/

Lars Nørvang Andersen Simulering og inferens i matematiske modeller fra biologien

Page 8: Simulering og inferens i matematiske modeller fra biologienmath.au.dk/fileadmin/Files/matlaererdag/2015/slides_LNA_handout.pdf · Aarhus, Marts 2015 Lars Nørvang Andersen Simulering

Simulering og inferens i matematiske modeller fra biologien

R

R-kode til at generere een generation:

gen = c('A','A','A','A','a','a','a','a') Liste med 4 A-er og 4 a-ersample(gen,replace = TRUE) sample bruges til udtræk med tilbagelægning

[1] "a" "a" "a" "a" "a" "a" "A" "a"

Vi kan iterere ovenstående og gemme antallet af ’A’-er i hvergeneration, indtil der kun er ’A’-er eller ’a’-er.

gen=c('A','A','A','A','A','A','A','A','A','A','a','a','a','a','a','a','a','a','a','a')out=c()

while (sum(gen=='A') > 0 && sum(gen=='a') > 0) { Så længe der både er A-er og a-er...out = c(out,sum(gen=='A')) ... tæl A-er og husk antallet ...gen = sample(gen,replace = TRUE) ... og lav en ny generation.

}

Lars Nørvang Andersen Simulering og inferens i matematiske modeller fra biologien

Page 9: Simulering og inferens i matematiske modeller fra biologienmath.au.dk/fileadmin/Files/matlaererdag/2015/slides_LNA_handout.pdf · Aarhus, Marts 2015 Lars Nørvang Andersen Simulering

Simulering og inferens i matematiske modeller fra biologien

R - indledende eksempler

plot(out,type='l',col='blue',ylim=c(0,20))

0 5 10 15 20 25 30

05

1015

20

Index

out

I fraværet af mutationer, vil A = 0 eller a = 0 væreabsorberende tilstande.

Lars Nørvang Andersen Simulering og inferens i matematiske modeller fra biologien

Page 10: Simulering og inferens i matematiske modeller fra biologienmath.au.dk/fileadmin/Files/matlaererdag/2015/slides_LNA_handout.pdf · Aarhus, Marts 2015 Lars Nørvang Andersen Simulering

Simulering og inferens i matematiske modeller fra biologien

R - indledende eksempler

Ved at tænke på et valg af A som “succes” ses at antallet afA-er binomialfordelt, hvor sandsynlighedsparameteren erfrekvensen af A-er i den foregående generation.

N = 2000frekvens = 0.5out=c(frekvens)while (frekvens > 0 && frekvens < 1) {

antalAer = rbinom(1,N,frekvens) rbinom simulerer binomialfordelingen.frekvens = antalAer/N beregn ny frekvensout = c(out,frekvens)

}

Lars Nørvang Andersen Simulering og inferens i matematiske modeller fra biologien

Page 11: Simulering og inferens i matematiske modeller fra biologienmath.au.dk/fileadmin/Files/matlaererdag/2015/slides_LNA_handout.pdf · Aarhus, Marts 2015 Lars Nørvang Andersen Simulering

Simulering og inferens i matematiske modeller fra biologien

R - indledende eksempler

plot(out,type="l",col='blue',ylim=c(0,1))

0 500 1000 1500 2000 2500

0.0

0.2

0.4

0.6

0.8

1.0

Index

out

Lars Nørvang Andersen Simulering og inferens i matematiske modeller fra biologien

Page 12: Simulering og inferens i matematiske modeller fra biologienmath.au.dk/fileadmin/Files/matlaererdag/2015/slides_LNA_handout.pdf · Aarhus, Marts 2015 Lars Nørvang Andersen Simulering

Simulering og inferens i matematiske modeller fra biologien

Estimation af absorptionssandsynligheden

Med et simpelt R program kan vi estimere sandsynligheden forabsorption i 1:

N = 2000R = 10000out = rep(0,R) Initialiserer en vektor med R nuller

for (i in 1:R) {frekvens = 0.5while (frekvens > 0 && frekvens < 1) {

frekvens = rbinom(1,N,frekvens)/N}out[i] = frekvens

}mean(out) mean beregner gennemsnittet

Output:

[1] 0.5033

Lars Nørvang Andersen Simulering og inferens i matematiske modeller fra biologien

Page 13: Simulering og inferens i matematiske modeller fra biologienmath.au.dk/fileadmin/Files/matlaererdag/2015/slides_LNA_handout.pdf · Aarhus, Marts 2015 Lars Nørvang Andersen Simulering

Simulering og inferens i matematiske modeller fra biologien

Estimation af ventetiden på absorption

Et lidt mere kompliceret spørgsmål er følgende: Hvordansammenhængen mellem middel-ventetiden på absorption ogfrekvensen?Spørgsmålet kan belyses vha. nedenstående stykke kode:

for (initial_frekvens in 1:9) { Gennemløb 1 . . . 9absorptions_tider = rep(0,R)for (i in 1:R) {

c = 0 tæller til antal gennemkørsler af løkkenfrekvens = initial_frekvens/10 start-frekvensenwhile (frekvens > 0 && frekvens < 1) {

frekvens = rbinom(1,N,frekvens)/Nc = c + 1

}absorptions_tider[i] = c

}out[initial_frekvens] = mean(absorptions_tider)

}

Lars Nørvang Andersen Simulering og inferens i matematiske modeller fra biologien

Page 14: Simulering og inferens i matematiske modeller fra biologienmath.au.dk/fileadmin/Files/matlaererdag/2015/slides_LNA_handout.pdf · Aarhus, Marts 2015 Lars Nørvang Andersen Simulering

Simulering og inferens i matematiske modeller fra biologien

Estimation af ventetiden på absorption

Plot af resultatet:

0.0 0.2 0.4 0.6 0.8 1.0

500

1000

1500

2000

2500

x

theo

abst

ime(

x)

Den indtegnede kurve er grafen for funktionen

p 7→ −2N(p log(p) + (1− p) log(1− p)) .

Lars Nørvang Andersen Simulering og inferens i matematiske modeller fra biologien

Page 15: Simulering og inferens i matematiske modeller fra biologienmath.au.dk/fileadmin/Files/matlaererdag/2015/slides_LNA_handout.pdf · Aarhus, Marts 2015 Lars Nørvang Andersen Simulering

Simulering og inferens i matematiske modeller fra biologien

Mutationer indføres

Vi antager nu at der i hver generation er sandsynlighed pA→afor at mutere fra A til a, og pa→A for at mutere fra a til A. Antalletaf A-er findes nu som

#A-er = #A-er valgt i foregående generation, som ikke muterede+#a-er valgt i foregående generation, som muterede. +(N −#A-er) valgt i foregående generation, som muterede.

Idet f betegner frekvensen af A-er i foregående generation,resulterer dette i en binomialfordeling medsandsynlighedsparameter:

f (1− pA→a) + (1− f )pa→A .

Når mutationer kan forekomme vil A = 0 og a = 0 ikke længerevære absorberende tilstande.

Lars Nørvang Andersen Simulering og inferens i matematiske modeller fra biologien

Page 16: Simulering og inferens i matematiske modeller fra biologienmath.au.dk/fileadmin/Files/matlaererdag/2015/slides_LNA_handout.pdf · Aarhus, Marts 2015 Lars Nørvang Andersen Simulering

Simulering og inferens i matematiske modeller fra biologien

Histogrammer med mutationer

N = 200; T = 300; repetitioner = 50000 T = 300 generationerp_A_to_a = p_a_to_A = 0.002 Dette er pA→a og pa→A

out = matrix(0,repetitioner,T)out[,1] = N/2for (i in 1:repetitioner) {

for (j in 2:T) {out[i,j] = rbinom(1,N,(out[i,j-1]/N)*(1-p_A_to_a)+(1-out[i,j-1]/N)*p_a_to_A)

}}hist(out[,10]/N) Histogram for den 10ende søjle, dvs. den 10ende generation.

Generation = 10

Frekvens af A−er

lling

er

0.0 0.2 0.4 0.6 0.8 1.0

050

010

0015

0020

0025

00

Generation = 50

Frekvens af A−er

lling

er

0.0 0.2 0.4 0.6 0.8 1.0

020

040

060

080

010

0012

00Generation = 300

Frekvens af A−er

lling

er

0.0 0.2 0.4 0.6 0.8 1.0

020

040

060

0

Lars Nørvang Andersen Simulering og inferens i matematiske modeller fra biologien

Page 17: Simulering og inferens i matematiske modeller fra biologienmath.au.dk/fileadmin/Files/matlaererdag/2015/slides_LNA_handout.pdf · Aarhus, Marts 2015 Lars Nørvang Andersen Simulering

Simulering og inferens i matematiske modeller fra biologien

Histogrammer med mutationer

Histogrammer som funktion af tiden.Lars Nørvang Andersen Simulering og inferens i matematiske modeller fra biologien

Page 18: Simulering og inferens i matematiske modeller fra biologienmath.au.dk/fileadmin/Files/matlaererdag/2015/slides_LNA_handout.pdf · Aarhus, Marts 2015 Lars Nørvang Andersen Simulering

Simulering og inferens i matematiske modeller fra biologien

Histogrammer med mutationer

Histogrammer, alternativ startbetingelse.Lars Nørvang Andersen Simulering og inferens i matematiske modeller fra biologien

Page 19: Simulering og inferens i matematiske modeller fra biologienmath.au.dk/fileadmin/Files/matlaererdag/2015/slides_LNA_handout.pdf · Aarhus, Marts 2015 Lars Nørvang Andersen Simulering

Simulering og inferens i matematiske modeller fra biologien

To populationer

Vi forestiller os nu a vores oprindelige population af størrelse Nsplitter op i to populationer af størrelse N/2 hver.Vi indfører derfor migrationssandsynligheder p1→2 og p2→1.For en population fandt vi en binomialfordeling medsandsynlighedsparameter

f (1− pA→a) + (1− f )pa→A .

Med to populationer bliver antal A-er i population 1 igenbinomialfordelt, nu med sandsynlighedsparameter

f1(1− pA→a)(1− p1→2) + (1− f1)pa→A(1− p1→2)+

f2(1− pA→a)p2→1 +(1− f2)pa→Ap2→1

og vi får et analogt udtryk for den tilsvarendesandsynlighedsparameter for population 2.

Lars Nørvang Andersen Simulering og inferens i matematiske modeller fra biologien

Page 20: Simulering og inferens i matematiske modeller fra biologienmath.au.dk/fileadmin/Files/matlaererdag/2015/slides_LNA_handout.pdf · Aarhus, Marts 2015 Lars Nørvang Andersen Simulering

Simulering og inferens i matematiske modeller fra biologien

Histogrammer med mutationer - to populationer

Histogrammer for to populationer.Lars Nørvang Andersen Simulering og inferens i matematiske modeller fra biologien

Page 21: Simulering og inferens i matematiske modeller fra biologienmath.au.dk/fileadmin/Files/matlaererdag/2015/slides_LNA_handout.pdf · Aarhus, Marts 2015 Lars Nørvang Andersen Simulering

Simulering og inferens i matematiske modeller fra biologien

Heterozygositet

Vi indfører nu heterozygositeten til at være sandsynligheden forat udtrække 2 forskellige alleler fra populationen, dvs.

Hn =2(# A-er)(N − # A-er)

N2 ,

og ser på hvordan denne opfører sig som funktion af tiden.

Lars Nørvang Andersen Simulering og inferens i matematiske modeller fra biologien

Page 22: Simulering og inferens i matematiske modeller fra biologienmath.au.dk/fileadmin/Files/matlaererdag/2015/slides_LNA_handout.pdf · Aarhus, Marts 2015 Lars Nørvang Andersen Simulering

Simulering og inferens i matematiske modeller fra biologien

Histogrammer og estimeret heterozygositet

Lars Nørvang Andersen Simulering og inferens i matematiske modeller fra biologien

Page 23: Simulering og inferens i matematiske modeller fra biologienmath.au.dk/fileadmin/Files/matlaererdag/2015/slides_LNA_handout.pdf · Aarhus, Marts 2015 Lars Nørvang Andersen Simulering

Simulering og inferens i matematiske modeller fra biologien

Efterskrift

I Wright-Fisher modellen er udgangspunktet nutiden, ogmodellen beskriver den fremtidige udvikling.I forbindelse med inferens vil vi i praksis betragte en model,hvor tiden “kører” baglæns, dvs. hvor modellen beskriverudviklingen bagud i tid.

Lars Nørvang Andersen Simulering og inferens i matematiske modeller fra biologien

Page 24: Simulering og inferens i matematiske modeller fra biologienmath.au.dk/fileadmin/Files/matlaererdag/2015/slides_LNA_handout.pdf · Aarhus, Marts 2015 Lars Nørvang Andersen Simulering

Simulering og inferens i matematiske modeller fra biologien

“Baglæns tid”

1 2 3 4 5 6 7

Fortid

Nutid

Lars Nørvang Andersen Simulering og inferens i matematiske modeller fra biologien

Page 25: Simulering og inferens i matematiske modeller fra biologienmath.au.dk/fileadmin/Files/matlaererdag/2015/slides_LNA_handout.pdf · Aarhus, Marts 2015 Lars Nørvang Andersen Simulering

Simulering og inferens i matematiske modeller fra biologien

Afslutning

Scally et al. Nature, 2012.Andersen et al. Journal of Mathematical Biology (2014)

Lars Nørvang Andersen Simulering og inferens i matematiske modeller fra biologien