Razumijevanje genetskog otklona kroz Wright–Fisherov model
Genetski otklon (genetski drift) predstavlja jedan od temeljnih mehanizama evolucije koji opisuje nasumične promjene u frekvencijama alela unutar populacije kroz generacije [i, j]. Za razliku od prirodne selekcije, genetski otklon je u potpunosti stohastički proces uzrokovan slučajnim uzorkovanjem gameta prilikom reprodukcije [i, j]. Kako bi se ti procesi vizualizirali i kvantificirali, ovaj simulator koristi diploidni Wright–Fisherov model, koji služi kao teorijski standard u populacijskoj genetici [i, j].
Kroz simulaciju više nezavisnih populacija pod identičnim početnim uvjetima, korisnici mogu uočiti kako se genetska raznolikost gubi ili fiksira isključivo pod utjecajem statističke slučajnosti. Simulator omogućuje praćenje putanja frekvencije alela, izračunavanje stope fiksacije i gubitka te analizu pada heterozigotnosti kroz vrijeme [i, j].
Postavke populacije i parametri simulacije
Za pokretanje simulacije u sučelju pod nazivom "Postavke populacije" potrebno je definirati parametre koji određuju demografska i genetska svojstva simuliranih skupina:
- Scenariji (unaprijed postavljene konfiguracije):
- Mala populacija
- Velika populacija
- Rijedak alel
- Efektivna veličina populacije, Ne: Unosi se u polje "jedinke koje se razmnožavaju". Vrijednost mora biti cijeli broj u rasponu od 1 do 100,000.
- Početna frekvencija alela, p₀: Unosi se kao "udio, 0–1". Dopuštene su vrijednosti od 0 do 1, uključujući obje granice.
- Generacije: Unosi se u polje "generacije". Vrijednost mora biti cijeli broj od 1 do 2,000.
- Nezavisne populacije: Unosi se u polje "ponavljanja". Vrijednost mora biti cijeli broj od 1 do 200.
- Nasumični seed: Tekstualno polje koje omogućuje reprodukciju simuliranih putanja. Maksimalna duljina unosa je 100 znakova. Gumb "Novi seed" omogućuje generiranje novog nasumičnog niza.
Tijekom rada simulatora, sustav prati opterećenje kako bi se osigurala stabilnost rada u pregledniku. Maksimalno dopušteno planirano opterećenje iznosi 5,000,000 izvlačenja kopija alela, što se računa kao umnožak 2Ne × generacije × ponavljanja. Ako konfiguracija prelazi ovo ograničenje, simulacija se blokira uz odgovarajuću poruku o pogrešci.
Metoda, pretpostavke i ograničenja
Ova stranica implementira neutralni diploidni Wright–Fisherov model opisan u Nature Education i Stanfordovom udžbeniku iz humane genetike [i, j]. Svaka nova generacija nasumičan je uzorak od 2Ne kopija alela iz prethodne [i, j]. Izvori provjereni 6. kolovoza 2026. [i, j].
Model se oslanja na strogo definirane teorijske pretpostavke:
- Konstantna efektivna veličina populacije (Nₑ) kroz sve generacije.
- Diskretne generacije koje se ne preklapaju [j].
- Nasumično i nezavisno uzorkovanje gameta [i, j].
- Potpuna selektivna neutralnost (svi genotipovi imaju jednaku prilagodbu) [i, j].
- Jedan nepovezani lokus s dva alela [j].
- Odsutnost mutacija i migracija (nema protoka gena) [j].
Ovaj se model ne smije koristiti kao prognoza za stvarne populacije u kojima su prisutni selekcija, promjena veličine populacije, neravnoteža spolova ili reproduktivnog uspjeha, preklapanje generacija, križanje u srodstvu, povezanost gena, protok gena ili struktura populacije [i, j]. Inženjerski faktor sigurnosti ne primjenjuje se na ovaj stohastički biološki model.
Svako binomno izvlačenje koristi točno Bernoullijevo uzorkovanje; ne koristi se normalna aproksimacija. Izračuni zadržavaju dvostruku preciznost JavaScripta. Frekvencije se nalaze na koracima od 1 ÷ (2Ne); prikaz se zaokružuje na najviše šest decimalnih mjesta.
Formula, supstitucija i preciznost
Matematička osnova simulacije prikazana je kroz sljedeće jednadžbe i njihove konkretne supstitucije u prvom koraku simulacije:
U svakoj generaciji, Wright–Fisherov prijelaz uzorkuje sljedeći broj alela i dijeli ga s dostupnim kopijama gena: Xₜ₊₁ ~ Binomial(2Ne, pₜ); pₜ₊₁ = Xₜ₊₁ ÷ (2Ne)
Prije uzorkovanja, ovi momenti opisuju raspon mogućih sljedećih generacija: E[Xₜ₊₁] = 2Ne·pₜ; Var(Xₜ₊₁) = 2Ne·pₜ(1 − pₜ); Var(pₜ₊₁) = pₜ(1 − pₜ) ÷ (2Ne)
Očekivani udio različitih parova alela opada kroz t generacija na sljedeći način: H₀ = 2p₀(1 − p₀); Hₜ = H₀(1 − 1 ÷ (2Ne))ᵗ
Za konkretne vrijednosti u prvoj generaciji, simulator prikazuje sljedeće izvedene podatke:
- Prva generacija koristi 2 ×
‹population›=‹copies›izvlačenja kopija alela. - E[X₁] =
‹copies›×‹frequency›=‹mean›kopija alela A. - Za prvu generaciju, Var(X₁) =
‹copies›×‹frequency›× (1 −‹frequency›) =‹variance›; SD(p₁) =‹sd›. - Prvo iscrtano ponavljanje uzorkovalo je X₁ =
‹sampled›kopija alela A, pa je p₁ =‹sampled›÷‹copies›=‹frequency›.
Rezultati i interpretacija izlaza
Nakon pokretanja simulacije, sustav generira grafički prikaz i tablične sažetke. Grafikon nosi ARIA naziv "Frekvencija alela po generacijama za ponovljene simulirane populacije". Na grafikonu je os X označena kao "Generacija", a os Y kao "Frekvencija alela p". Referentna linija označava vrijednost "Očekivani p = p₀". Ispod grafikona nalazi se indikator putanja: "Prikazuje se ‹shown› od ‹total› putanja; svako ponavljanje uključeno je u sažetak."
U odjeljku sa statističkim sažetkom prikazuju se sljedeće vrijednosti:
- Fiksirano na p = 1: Udio populacija u kojima je alel postigao potpunu fiksaciju.
- Izgubljeno na p = 0: Udio populacija u kojima je alel u potpunosti izgubljen.
- Nije apsorbirano do T: Udio populacija u kojima frekvencija alela još uvijek fluktuira unutar granica (0, 1) na kraju simulacije.
- Srednji konačni p: Prosječna frekvencija alela u svim ponavljanjima na zadnjoj generaciji.
- Očekivani H u T: Teorijska heterozigotnost izračunata prema formuli opadanja [i, j].
- Srednji simulirani H u T: Stvarna prosječna heterozigotnost zabilježena u simulaciji na generaciji T.
- Srednja generacija apsorpcije: Prosječan broj generacija potreban da populacije dosegnu fiksaciju ili gubitak (prikazuje "nije dosegnuto" ako niti jedna populacija nije apsorbirana).
Tijekom izvođenja, statusne poruke mijenjaju se ovisno o stanju procesa:
- Prije pokretanja: "Promijenite scenarij populacije ili ponovno pokrenite ovaj primjer sa seedom."
- Tijekom rada: "Uzorkovanje sljedećih generacija…"
- Nakon završetka: "Simulirano je
‹replicates›populacija kroz‹generations›generacija uz korištenje seeda „‹seed›”."
Privatnost i lokalna obrada podataka
Svi parametri, unosi i rezultati simuliranih populacija obrađuju se lokalno i ostaju u ovom pregledniku. Podaci se ne šalju na vanjske poslužitelje niti se pohranjuju izvan korisničkog uređaja.
Često postavljana pitanja (FAQ)
Trebam li unijeti popisnu veličinu ili efektivnu veličinu populacije?
Unesite efektivnu veličinu populacije, Ne: veličinu idealizirane populacije za razmnožavanje koja bi driftala istom stopom kao i populacija koju namjeravate proučavati. Popisna veličina može biti mnogo veća kada su omjeri spolova, reproduktivni uspjeh, fluktuacije populacije ili struktura populacije neravnomjerni.
Zašto srednja frekvencija alela može ostati blizu p₀ dok heterozigotnost opada?
Neutralni drift nema preferirani smjer kroz mnogo nezavisnih populacija, pa prosječna frekvencija u očekivanju ostaje p₀ [i, j]. Međutim, pojedinačne populacije šire se prema 0 ili 1, a obje granice imaju nultu heterozigotnost [i, j]. Varijacija se stoga gubi čak i dok srednja vrijednost među populacijama ostaje gotovo nepromijenjena.
Je li neutralna vjerojatnost konačne fiksacije jednaka početnoj frekvenciji?
Da, u ovom neutralnom modelu bez mutacija ili migracija, alel koji započinje s frekvencijom p₀ ima vjerojatnost konačne fiksacije p₀ i vjerojatnost gubitka 1 − p₀ [i, j]. Gore prikazane stope obuhvaćaju samo uneseni broj generacija i ponavljanja, pa će varirati ovisno o sjemenu.
Može li ovo predvidjeti što će se dogoditi u stvarnoj populaciji?
Ne. Prikazuje ishode pod namjerno idealiziranim neutralnim Wright–Fisherovim modelom [i, j]. Stvarna predviđanja zahtijevaju pouzdane procjene efektivne veličine te bilo koje selekcije, mutacije, migracije, promjene veličine populacije, preklapanja generacija, povezanosti gena i strukture populacije koje su važne za taj slučaj [i, j].
Poruke o pogreškama pri unosu
U slučaju neispravnih unosa, sustav će prikazati jednu od sljedećih poruka:
- Ako vrijednost nije brojčana:
‹field›: „‹token›” nije broj. - Ako je unesen decimalni broj umjesto cijelog broja:
‹field›: unesite cijeli broj. - Ako je veličina populacije izvan granica:
Efektivna veličina populacije mora biti cijeli broj od 1 do 100,000. - Ako je početna frekvencija izvan granica:
Početna frekvencija alela mora biti između 0 i 1, uključujući obje granice. - Ako je broj generacija izvan granica:
Generacije moraju biti cijeli broj od 1 do 2,000. - Ako je broj ponavljanja izvan granica:
Nezavisne populacije moraju biti cijeli broj od 1 do 200. - Ako nedostaje seed:
Unesite nasumično sjeme kako bi se simulacija mogla reproducirati. - Ako je seed predug:
Nasumično sjeme smije imati najviše 100 znakova. - Ako je prekoračeno ograničenje izračuna:
Ova konfiguracija planira ‹draws› izvlačenja kopija alela, što je iznad ograničenja preglednika od ‹limit›. Smanjite veličinu populacije, broj generacija ili broj ponavljanja.