ЛАБОРАТОРНАЯ РАБОТА №9. ИССЛЕДОВАНИЕ МОДЕЛИ "ХИЩНИК_ЖЕРТВА". 1. Постановка задачи. В данной модели рассматривается борьба за существование двух видов в популяции – хищников и жертв. 2. Математическая модель. Пусть N(t) – численность жертв, M(t) – численность хищников, β1 – коэффициент исчезновения жертв, β2 – прирост числа хищников за счёт пищи из жертв. Образуются два уравнения с двумя начальными условиями, и возникает задача Коши: dN dt ( 1 1 M ) N dM ( N ) M 2 2 dt N (0) N 0 M ( 0) M 0 Исключим t из системы, поделив одно уравнение на другое: dM ( 2 2 N ) M dN ( 1 1 M ) N Запишем наше уравнение в виде пропорции: (1 1M ) N dM ( 2 2 N )M dN Разделим на произведение N*M: 1 dM dN 1 dM 2 2 dN M N Получили дифференциальное уравнение в полных дифференциалах. После интегрирования получим: ln M 1 1 M ln N 2 2 N C где C находится начальных условий. 3. Упрощающие предположения. Численность жертв уменьшается с ростом числа хищников, а численность хищников падает с уменьшением числа жертв. Математическая модель, описывающая динамику численности двух видов, строится на следующих упрощающих предположениях: Численности популяции жертв N и хищников M зависят только от времени (не учитывающая пространственное распределение популяции на занимаемой территории) В отсутствии взаимодействия численность видом видов изменяется по модели Мальтуса (при этом число жертв увеличивается, а хищников падает) dN/dt=alfa*N; dM/dt=-beta*M; Естественная смертность и рождаемость хищника считается не существенными Эффект насыщения численности обоих популяций не учитывается Скорость роста численности жертвы уменьшается пропорционально численности хищников, т.е. величине c*M, с>0, а темп роста хищников увеличивается пропорционально численности жертвы, т.е. величине d*N, d>0 Исходя из данных упрощающих предположений, можем записать дифференциальные уравнения, описывающие математическую модель: dN/dt=alfa*N-c*M, dM/dt=-beta*M-d*N 4. Реализация в MATLAB. Создадим M файл для расчета дифференциальных уравнений function chislennost=hg(t,M) chislennost=zeros(2,1); a1=20; a2=15; b1=0.3; b2=0.2; chislennost(1)=(a1-b1*M(2)).*M(1); chislennost(2)=(-a2+b2*M(1)).*M(2); В командной строке пропишем: [t,y]=ode45(@hg,[0 3],[Nst,Mst]); plot(y(:,1),y(:,2)); Полученный график показывает цикличность происходящих процессов, а именно снижение численности жертв, за счет этого снижение численности хищников, следствием чего является увеличение численности жертв и в будущем увеличение численности хищников. График очень сильно зависит от изначальных параметров. Но их очень тяжело подобрать, потому что количество хищников и жертв очень быстро снижается до считанных единиц и график становится не столь красивым. Зависимость популяции от времени В подобном графике не очень просто выделить изменение численности той или иной популяции во времени, поэтому, для наглядности, построим их отдельно: plot(t,y(:,1),t,y(:,2)); Синим цветом идет изменение численности жертв, а зеленым хищников, собственно присмотревшись в один из этих периодов можно найти описанный выше круговорот.