Dr. Baranyai László, fénykép

Dr. Baranyai László

 

Legelő tehén szimulációja

dec 1, 18:29, |

 

Az állati viselkedés kutatása külön tudományág, saját megfigyeléseimnél többet nem is tudok a témáról. Érdekes azonban a lehetőség, hogy szimulációval leírjam a veiselkedés főbb paramétereit. A modell elemzésével pedig többet tudhatok meg a szimuláció eszközéről is. Ez esetben is az R-project programcsomagot használtam.

Elemzés

Egyetlen tehén mozgását egyenletes eloszlásból vett véletlen számokkal szimuláltam, polár koordinátákkal megadva az elmozdulást. A számításokat 10 min felbontásban végeztem 12h időtartammal, P(0;0) kiindulási pozíciót figyelembe véve. A következő kódban singlecow() függvény paraméterei a legnagyobb lépéshossz (MM), valamint a szögelfordulás határai (Amin és Amax).

singlecow <- function(MM,Amin,Amax)
{
 n <- 6*12
 d <- runif(n,0,MM)
 a <- runif(n,Amin,Amax)
 dx <- d*cos(a*pi/180)
 dy <- d*sin(a*pi/180)
 x <- rep(0,n+1)
 y <- rep(0,n+1)
 S <- 0
 for (i in 2:n+1) {
  x[i] <- x[i-1]+dx[i-1]
  y[i] <- y[i-1]+dy[i-1]
  S <- S + sqrt(dx[i-1]^2 + dy[i-1]^2)
 }
 A <- (max(x)-min(x))*(max(y)-min(y))
 return( c(S,A) )
}

Egyetlen tehén útvonala MM = 50 m, Amin = -135° és Amax = 135° adatok alapján a következő ábrán látható. Természetesen a véletlenszám generálás miatt minden újabb futtatás során új útvonal keletkezik.

Tehén szimulált útvonala

Az útvonalat két mérőszámmal írja le a függvény, a teljes megtett úthosszal és az útvonalat befoglaló téglalap területével. A modell viselkedését elsőként a mozgási sebességre való érzékenységgel vizsgálva a 10 min idő alatt megtett távolságot 5-50 tartományban állítottam.

maxmove <- seq(5,50,by=1)
nmm <- length(maxmove)
SimD <- rep(0,nmm)
SimA <- rep(0,nmm)
for (j in 1:nmm) {
 tmp <- singlecow(maxmove[j],-135,135)
 SimD[j] <- tmp[1]
 SimA[j] <- tmp[2]
}

A megtett teljes úthossz egyenesen arányos a sebességgel:

Sebesség hatása a megtett távolságra

A bejárt terület négyzetesen arányos a sebességgel:

Sebesség hatása a bejárt területre

A választható irány korlátozására - mennyit forgológik a tehén - ugyanakkor úgy tűnik ez a modell nem érzékeny:

angles <- seq(45,135,by=1)
na <- length(angles)
SimD2 <- rep(0,na)
SimA2 <- rep(0,na)
for (j in 1:na) {
  tmp <- singlecow(20,-1*angles[j],angles[j])
  SimD2[j] <- tmp[1]
  SimA2[j] <- tmp[2]  
}

Ábrázolva őket mind a megtett úthossz, mind a bejárt terület függetlennek tűnik a szög paramétertől.

Szög hatása az úthosszra

Összegzés

A tehén mozgását leíró sztochasztikus modell az elvárt módon reagál a sebesség változtatására. A választható irány paraméterezése viszont úgy tűnik nincsen hatással a választott leíró paraméterekre (megtett úthossz, bejárt terület). Ezek vélhetően az egyenletes eloszlás következményei. Aki jobban ismeri a teheneket, talán más eloszlásból választ véletlen számokat. A bemutatott technika egyébként az un. Monte Carlo szimuláció néven is ismert.

 

comments powered by Disqus