  Understanding the evolution of human society, as a complex adaptive system,
is a task that has been looked upon from various angles. In this paper, we
simulate an agent-based model with a high enough population tractably. To do
this, we characterize an entity called \textit{society}, which helps us reduce
the complexity of each step from $\mathcal{O}(n^2)$ to $\mathcal{O}(n)$. We
propose a very realistic setting, where we design a joint alternate
maximization step algorithm to maximize a certain \textit{fitness} function,
which we believe simulates the way societies develop. Our key contributions
include (i) proposing a novel protocol for simulating the evolution of a
society with cheap, non-optimal joint alternate maximization steps (ii)
providing a framework for carrying out experiments that adhere to this
joint-optimization simulation framework (iii) carrying out experiments to show
that it makes sense empirically (iv) providing an alternate justification for
the use of \textit{society} in the simulations.
