From 580f670dd7bea442c8f478ef2f2efa4c9974c47f Mon Sep 17 00:00:00 2001 From: Daniel Axtens Date: Thu, 9 Sep 2010 16:15:44 +0800 Subject: [PATCH] option to cap number of agents --- src/uccProgComp.py | 13 +++++++------ 1 file changed, 7 insertions(+), 6 deletions(-) diff --git a/src/uccProgComp.py b/src/uccProgComp.py index 9f256fd..e3080bb 100644 --- a/src/uccProgComp.py +++ b/src/uccProgComp.py @@ -153,12 +153,13 @@ class Supervisor: @Debug def SpawnAgent (self, agent): - child = agent.__class__ () - self.population.append (child) - agent.Reproduced () - stat = self.agentStats [str(agent.__class__)] - stat [0] += 1 - stat [1] += 1 + if MAX_TOTAL_AGENTS > 0 and len(self.population) - len(self.pendingDeaths) < MAX_TOTAL_AGENTS: + child = agent.__class__ () + self.population.append (child) + agent.Reproduced () + stat = self.agentStats [str(agent.__class__)] + stat [0] += 1 + stat [1] += 1 def Select (self): # This approach causes agents to keep fighting until they've either died or reproduced. -- 2.20.1