def howManyToPost(codeletName): if codeletName == 'breaker' or 'description' in codeletName: return 1 if 'translator' in codeletName: if not workspace.rule: return 0 return 1 if 'rule' in codeletName: return 2 if 'group' in codeletName and not workspace.numberOfBonds(): return 0 if 'replacement' in codeletName and workspace.rule: return 0 number = 0 if 'bond' in codeletName: number = workspace.numberOfUnrelatedObjects() if 'group' in codeletName: number = workspace.numberOfUngroupedObjects() if 'replacement' in codeletName: number = workspace.numberOfUnreplacedObjects() if 'correspondence' in codeletName: number = workspace.numberOfUncorrespondingObjects() if number < formulas.blur(2.0): return 1 if number < formulas.blur(4.0): return 2 return 3
def howManyToPost(codeletName): if codeletName == 'breaker': return 1 if 'description' in codeletName: return 1 if 'translator' in codeletName: if not workspace.rule: return 0 return 1 if 'rule' in codeletName: return 2 if 'group' in codeletName and not workspace.numberOfBonds(): return 0 if 'replacement' in codeletName and workspace.rule: return 0 number = 0 if 'bond' in codeletName: number = workspace.numberOfUnrelatedObjects() # print 'post number of unrelated: %d, objects: %d' % (number,len(workspace.objects)) if 'group' in codeletName: number = workspace.numberOfUngroupedObjects() if 'replacement' in codeletName: number = workspace.numberOfUnreplacedObjects() if 'correspondence' in codeletName: number = workspace.numberOfUncorrespondingObjects() if number < formulas.blur(2.0): return 1 if number < formulas.blur(4.0): return 2 return 3
def probabilityOfPosting(codeletName): if codeletName == 'breaker': return 1.0 if 'description' in codeletName: result = (formulas.Temperature / 100.0) ** 2 else: result = workspace.intraStringUnhappiness / 100.0 if 'correspondence' in codeletName: result = workspace.interStringUnhappiness / 100.0 if 'replacement' in codeletName: if workspace.numberOfUnreplacedObjects() > 0: return 1.0 return 0.0 if 'rule' in codeletName: if not workspace.rule: return 1.0 return workspace.rule.totalWeakness() / 100.0 if 'translator' in codeletName: if not workspace.rule: assert 0 return 0.0 assert 0 return 1.0 return result
def probabilityOfPosting(codeletName): if codeletName == 'breaker': return 1.0 if 'description' in codeletName: result = (formulas.Temperature / 100.0)**2 else: result = workspace.intraStringUnhappiness / 100.0 if 'correspondence' in codeletName: result = workspace.interStringUnhappiness / 100.0 if 'replacement' in codeletName: if workspace.numberOfUnreplacedObjects() > 0: return 1.0 return 0.0 if 'rule' in codeletName: if not workspace.rule: return 1.0 return workspace.rule.total_weakness / 100.0 if 'translator' in codeletName: if not workspace.rule: assert 0 return 0.0 assert 0 return 1.0 return result