Population Dynamics and Sustainability#
About the project#
Duration: 3-4 hours in class, 1-2 hours preparation at home
Prerequisites: Linear algebra (matrix–vector products, eigenvalues/eigenvectors, diagonalization/eigendecomposition), basic programming (for-loops, lists/arrays, if/elif/else), basic mathematical modeling (discrete-time dynamical systems)
Python packages:
numpy,matplotlib(optional:pandasfor CSV data handling,ipywidgetsfor interactive visualization)Learning objectives: Model age-structured populations as discrete dynamical systems, iterate matrix models in Python and interpret results, connect long-run behavior to dominant eigenvalues/eigenvectors and demographic profiles, build and analyze Leslie matrices (birth/survival rates) including net reproduction rate, simulate competing species with coupled matrix models and interpret competitive exclusion, use real demographic data to construct a data-driven population model, incorporate migration as an external input term and compute equilibrium via linear systems, compare computational cost of direct matrix powers versus iterative matrix–vector updates