Devoir 1 : Dynamique de populations SUN Xuan/ZHANG Zhengmeng

Qestion 0 : Décrire votre intuition

1.La valeur de P(t+n) est imprévisible. Mais on peut dire que , la valeur va onduler au début (n est petit ), mais elle va devenir de plus en plus stabilisée , à la fin , soit 1 ou soit 0.

2.Car n1=n2=1, je pense que c'est une distribution normale , le plus proche de 0.5 , la possibilité est plus haute .

3.Pour (1,1) (10,10) (100,100) les résultat sont tous pareils Pour (1,1) (1,10) (1,100) , le moyen de la limite de P(t) devient de plus en plus petit .

Question 1:

set.seed(50)

n1 <- 1
n2 <- 1
n <- 500

trace <- function(n1, n2, n) {
    pt <- 1:n
    for (a in 1:n) {
        p <- n1/(n1 + n2)
        x <- runif(1)
        if (x < p) {
            n1 <- n1 + 1
        } else {
            n2 <- n2 + 1
        }
        pt[a] <- p
    }
    pt
}

plot(trace(1, 1, n), xlim = c(0, 500), ylim = c(0, 1), type = "n")

for (b in 1:10) {
    lines(trace(1, 1, n), col = b)
}

plot of chunk unnamed-chunk-1


On voit que c'est vrai que les valeurs ont ondulé au début , et elles sont devenues de plus en plus stabilisées .Mais au lieu d'être 0 ou 1 , il y a beaucoup d'autres possibilités

Question 2:

n <- 1500
limit <- function(n1, n2, n) {
    pt <- 1:n
    for (a in 1:n) {
        p <- n1/(n1 + n2)
        x <- runif(1)
        if (x < p) {
            n1 <- n1 + 1
        } else {
            n2 <- n2 + 1
        }
    }
    p
}
L <- c()
for (i in 1:3000) {
    L[i] <- limit(1, 1, n)
}

hist(L, col = "purple")

plot of chunk unnamed-chunk-2

Question 3 :

# n1=10 n2=10
n <- 1000
L <- c()
for (i in 1:1000) {
    L[i] <- limit(10, 10, n)
}
hist(L, col = "purple", main = "n1=10 n2=10")

plot of chunk unnamed-chunk-3


# n1=100 n2=100
n <- 1000
L <- c()
for (i in 1:1000) {
    L[i] <- limit(100, 100, n)
}
hist(L, col = "purple", main = "n1=100 n2=100")

plot of chunk unnamed-chunk-3


# n1=1 n2=10
n <- 1000
L <- c()
for (i in 1:1000) {
    L[i] <- limit(1, 10, n)
}
hist(L, col = "purple", main = "n1=1 n2=10")

plot of chunk unnamed-chunk-3



# n1=1 n2=100
n <- 1000
L <- c()
for (i in 1:1000) {
    L[i] <- limit(1, 100, n)
}
hist(L, col = "purple", main = "n1=1 n2=100")

plot of chunk unnamed-chunk-3

Je pensais qu'il y avait de la différence entre (1,10) et (1,100),mais en fait à condition que n1 et n2 soient différents (un est petit , l'autre est grand), la difference de limite est presque sans doute.

Question 4 : Les résultats ne sont pas complètement pareils que notre intuition initiale.