I'm putting this thread in the games section because I think all of you gamer type people would have a better idea of how to accomplish this. Task: Program a text-based computer simulation of primitive/medieval human life in a village/town So what kind of things would you consider keeping track of? If it helps, think of like all those rollercoaster tycoon type games or dwarf fortress where you don't actually control the little huuumans. How would you make a computer model that has them running around, breeding, doing stuff like auto-building/economy/trade? Yet also keep it efficient and scalable to the point that simulating 10,000 humans doesn't crash and kill your computer? Yes, obviously you need to use heuristics of some kind to simplify reality, but the question is what kind of heuristics are good to choose? If you've never seen this little game before, you should take a look.