Population Simulation
Programs |
population_sim_100.7 (published 2009-08-03)
population_sim_100.8 (published 2010-04-02)
source code (written in HP-BASIC for
OpenVMS) |
Notes |
This population simulation is a quick hack to test a few ideas rolling around my head The output of this program is text-based (not graphical) Click for other totally free BASIC, C, C++, and DCL programs for OpenVMS
- Sample Run 1 (one-child per-couple policy)
- drops by 1/3 after 41 years
- Sample Run 2 (one-child per-couple policy
with 1% unplanned teenage mating)
- Sample Run 3 (two-child per-couple policy)
- Sample Run 4 (one-child per-couple policy;
mating is spread across five years)
- drops by 1/3 after 42 years
- Sample Run 5 (one-child per-couple policy;
mating is spread across five years)
- drops by 1/3 after 44 years
|
Implementation Notes:
- this is an idealized society where everyone lives to old age then dies in the same year on December 31
- selected groups mate all on the same day then give birth on September 1
- selected groups only mate within their own age group
- all mating produces an equal number of males and females
- this society starts with an evenly distributed population then begins
implementing the desired policy
- all logic (except repro_fraction) is implemented with integers. I did this to make this simulation
more deterministic AND to make sure we don't have fractional people.
- Legend:
PR = Planned Reproduction
TR = Teenage Reproduction
Observations
- if every couple produces two children, the population will remain constant
(because when the parents die, two replacements will remain)
- since the reproduction rate adds to (or subtracts from) the total
population, then the maximum average life span plays a larger roll than you
would suspect.
- a true one-child-per-couple policy will require 41 years to cut the
population in half (if the average maximum age is 75).
- a tiny amount of unplanned teenage reproduction will grow the population
faster than you would suspect.
- my implementation is not as restrictive as you might think.
- Whether mating is restricted to people in the same age group OR
matting is unfettered, their offspring all contribute to the same baby
pool which then ripples through to the end.
- People dying all in the same year is not a problem. In realty, some
will die earlier while others might die later so it all averages out. This simulation would
have a problem only if people died before they reproduced.

Back
to
HomeNeil Rieck
Waterloo, Ontario, Canada.