Частоты аллелей и закон Харди-Вайнберга
Урок о главном уравнении популяционной генетики, связывающем частоты аллелей и генотипов.
Закон Харди-Вайнберга: в идеальной популяции частоты аллелей и генотипов из поколения в поколение не меняются и связаны соотношением $p^2 + 2pq + q^2 = 1$.
От семьи к популяции
Мендель описывал одно скрещивание. Но что происходит с целой популяцией из тысяч особей? Введём частоты аллелей: пусть доля аллеля A равна $p$, доля a равна $q$, причём $p + q = 1$. Тогда при случайном скрещивании частоты генотипов в потомстве задаёт разложение квадрата суммы:
$$ (p + q)^2 = p^2 + 2pq + q^2 = 1 $$
где $p^2$ — доля AA, $2pq$ — доля Aa, $q^2$ — доля aa. Это и есть закон Харди-Вайнберга.
p = 0.7 # частота аллеля A
q = 1 - p # частота аллеля a
AA = p * p
Aa = 2 * p * q
aa = q * q
print("p (A) =", p, " q (a) =", round(q, 1))
print("AA = p^2 =", round(AA, 3))
print("Aa = 2pq =", round(Aa, 3))
print("aa = q^2 =", round(aa, 3))
print("Сумма генотипов:", round(AA + Aa + aa, 3))Вывод:
p (A) = 0.7 q (a) = 0.3 AA = p^2 = 0.49 Aa = 2pq = 0.42 aa = q^2 = 0.09 Сумма генотипов: 1.0
Обратная задача
Закон удобен тем, что по частоте видимого рецессивного фенотипа (aa) можно восстановить частоты аллелей. Если доля aa равна $q^2$, то $q = \sqrt{q^2}$, а $p = 1 - q$.
import math
freq_aa = 0.16 # доля рецессивных особей (например, признак виден у 16%)
q = math.sqrt(freq_aa)
p = 1 - q
print("Доля aa:", freq_aa)
print("q (a) =", round(q, 3))
print("p (A) =", round(p, 3))
print("Доля носителей Aa = 2pq =", round(2 * p * q, 3))Вывод:
Доля aa: 0.16 q (a) = 0.4 p (A) = 0.6 Доля носителей Aa = 2pq = 0.48
Зная лишь долю проявившегося признака, мы вычислили, что почти половина популяции — скрытые носители Aa.
Пять условий равновесия
- Бесконечно большая популяция (нет дрейфа).
- Случайное скрещивание (нет выбора партнёра по признаку).
- Нет мутаций.
- Нет миграции.
- Нет естественного отбора.
В реальности эти условия выполняются лишь приблизительно, и именно отклонения от равновесия — двигатель эволюции.
Как работает под капотом
Закон Харди-Вайнберга — это просто перемножение вероятностей при случайном выборе двух гамет. Вероятность взять две A-гаметы равна $p \cdot p = p^2$; две a — $q^2$; одну каждую — $2pq$ (множитель 2, потому что Aa и aA — один генотип, но два пути его получить). То есть за биологией стоит элементарная комбинаторика.
Частые ошибки
- Забывают множитель 2 в члене $2pq$ для гетерозигот.
- Считают, что закон выполняется в любой реальной популяции. Он описывает идеальный случай.
- Путают частоту аллеля и частоту генотипа.
Итог
- Частоты аллелей: $p + q = 1$; частоты генотипов: $p^2 + 2pq + q^2 = 1$.
- По доле рецессивного фенотипа ($q^2$) восстанавливаются частоты аллелей.
- Равновесие требует пяти условий; их нарушение и есть эволюция.
- Формула — следствие случайного выбора гамет (комбинаторика).