コード例 #1
0
ファイル: Dynamics_test.py プロジェクト: jecki/CoopSim
 def testNumericReplicator4(self):
     """Little noise should only matter a little"""
     for i in xrange(50):
         p = Dynamics.RandomDistribution(100)
         f = array([random.random() for k in xrange(100)])
         r = Dynamics._numeric_QuickReplicator(p, f)
         r2 = Dynamics._numeric_Replicator(p, f, 0.01)
         self.failUnless(AlmostEqual(r, r2, 0.0101))
コード例 #2
0
ファイル: Dynamics_test.py プロジェクト: jecki/CoopSim
 def testNumericReplicator2(self):
     """Replicator should yield the same results as QR if noise = 0.0"""
     for i in xrange(50):
         p = Dynamics.RandomDistribution(20)
         f = array([random.random() for k in xrange(20)])
         r = Dynamics._numeric_QuickReplicator(p, f)
         r2 = Dynamics._numeric_Replicator(p, f, 0.0)
         self.failUnless(AlmostEqual(r, r2))
コード例 #3
0
ファイル: Dynamics_test.py プロジェクト: jecki/CoopSim
 def testNumericReplicator3(self):
     """Noise should matter"""
     for i in xrange(50):
         p = Dynamics.RandomDistribution(100)
         f = array([random.random() for k in xrange(100)])
         r = Dynamics._numeric_QuickReplicator(p, f)
         r2 = Dynamics._numeric_Replicator(p, f, 0.5)
         self.failIf(AlmostEqual(r, r2))            
コード例 #4
0
ファイル: Dynamics_test.py プロジェクト: jecki/CoopSim
 def testNumericReplicator1(self):
     """Results of Replicator should be sound"""
     for i in xrange(50):
         p = Dynamics.RandomDistribution(50)
         f = array([random.random() for k in xrange(50)])
         r = Dynamics._numeric_Replicator(p, f, random.random())
         for x in r:
             self.failIf(x < 0.0 or x > 1.0)
         self.failUnless(AlmostEqual(sum(r), 1.0))